簡體   English   中英

C# ASP.NET Core MVC:異常處理 - 我需要更多數據,如 URL 參數和會話

[英]C# ASP.NET Core MVC : exception handling - I need more data like URL parameter and session

我構建了一個 C# ASP.NET Core 2 MVC 應用程序,並且運行良好。 有時我的數據庫中有一些奇怪的錯誤,我需要更多的數據來分析。

我有自己的錯誤類

if (env.IsProduction()) 
{
      app.UseBrowserLink(); 
      app.UseExceptionHandler("/error/index"); 
}

並記錄更多數據 - 如果用戶已登錄,例如 IP 地址或用戶 ID:

_context.Error.Add(new Error
    {
        errorMessage = feature.Error.Message?.ToString(),
        errorStackTrace = feature.Error.StackTrace?.ToString(),
        errorUserAgent = Request.Headers["User-Agent"].ToString(),
        errordate = DateTime.Now,
        errorIP = HttpContext.Features.Get<IHttpConnectionFeature>()?.RemoteIpAddress?.ToString(),
        errorInnerException = feature.Error.InnerException?.ToString(),
        errorSource = feature.Error.Source?.ToString(),
        errorUserID = (tmpUserID.ToString() == "00000000-0000-0000-0000-000000000000") ? null : tmpUserID.ToString(),
        errorForm = SesionFormData
    });
_context.SaveChanges();

但是我發現無法獲取會話數據甚至是崩潰請求的簡單 URL 參數:(

有辦法嗎?

非常感謝拉爾夫

您可以通過以下方式獲取原始網址:

var requestFeature = HttpContext.Features.Get<IHttpRequestFeature>();
var originalUrl = requestFeature.RawTarget;

有關詳細信息,請參閱對此答案的評論: https : //stackoverflow.com/a/38747631/765818

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM