3

Gibt es eine MVC6-kompatible Version von WebTelemetryInitializerBase, die mit ASP.NET Core (auf dem vollständigen .NET Framework) funktionieren würde?WebTelemetryInitializerBase in ASP.NET Core/MVC6

Siehe my question here, wo ich fragte, wie man HttpContext in meine Hemisphäre Initializer bekommen. Leider habe ich nicht angegeben, dass ich MVC 6 und damit keine System.Web.HttpContext verwende.

Antwort

3

Ja, es gibt eine Version von diesem für aspnetcore. Überprüfen Sie die Microsoft Application Insights for ASP.NET Core applications Repo.

Es gibt eine Implementierung zum Abrufen des WebUser in /src/Microsoft.ApplicationInsights.AspNetCore/TelemetryInitializers/WebUserTelemetryInitializer.cs, den Sie als Leitfaden verwenden können.

Die Klasse TelemetryInitializerBase ist diejenige, die die IHttpContextAccessor verwendet, die verwendet wird, um den HttpContext abzurufen.

Von dort können Sie die Microsoft.AspNetCore.Http.HttpContext.User bekommen, die sie Art von System.Security.Claims.ClaimsPrincipal

ist