第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在 ExceptionFilter 中訪問(wèn) dbcontext

在 ExceptionFilter 中訪問(wèn) dbcontext

C#
梵蒂岡之花 2021-08-22 18:02:54
我寫(xiě)了一個(gè)ExceptionFilter屬性,我需要訪問(wèn)dbContext類(lèi)來(lái)執(zhí)行數(shù)據(jù)庫(kù)事務(wù)。但我null在我的過(guò)濾器屬性中收到了引用。有什么辦法可以讓我得到工作參考dbContext嗎?    public class AppExceptionAttribute : ExceptionFilterAttribute    {        AppIdentityDbContext _context;        public AppExceptionAttribute(AppIdentityDbContext context)        {            _context = context;        }        public AppExceptionAttribute()        { }        public override async Task OnExceptionAsync(ExceptionContext context)        {            var exception = context.Exception;            while (exception != null)            {    //here _context is null, that is a dbContext class                _context.Errors.Add(new Entities.Error {                    Message = exception.Message,                    StackTrace = exception.StackTrace,                    Date = DateTime.Now                });                exception = exception.InnerException;            }            await _context.SaveChangesAsync();        }    }我需要提到這是一個(gè)asp.net核心應(yīng)用程序
查看完整描述

1 回答

?
慕標(biāo)琳琳

TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超9個(gè)贊

您可以IServiceProvider從ExceptionContext.


public override async Task OnExceptionAsync(ExceptionContext context)

{

    var db = context.HttpContext.RequestServices.GetService<AppIdentityDbContext>();


    ...


    await db.SaveChangesAsync();

}


查看完整回答
反對(duì) 回復(fù) 2021-08-22
  • 1 回答
  • 0 關(guān)注
  • 202 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)