asp.net-core – ASP.NET Core / MVC6中的WebTelemetryInitializerBase

WebTelemetryInitializerBase的MVC6兼容版本是否可以与ASP.NET Core一起使用(在完整的.NET Framework上)?

请参阅my question here,其中我询问如何在我的temeletry初始化器中获取HttpContext.不幸的是,我没有指定我使用的是MVC 6,因此没有使用System.Web.HttpContext.

解决方法

是的,aspnetcore有一个版本.查看 Microsoft Application Insights for ASP.NET Core applications回购.

获取/src/Microsoft.ApplicationInsights.AspNetCore/TelemetryInitializers/WebUserTelemetryInitializer.cs中找到的WebUser的实现,您可以将其用作指南.

TelemetryInitializerBase类是消耗用于获取HttpContext的IHttpContextAccessor的类.

从那里你可以得到Microsoft.AspNetCore.Http.HttpContext.User,它们是System.Security.Claims.ClaimsPrincipal的类型.

相关文章

本文将从上往下,循序渐进的介绍一系列相关.NET的概念,先从...
基于 .NET 的一个全新的、好用的 PHP SDK + Runtime: Pe...
.NET 异步工作原理介绍。
引子 .NET 6 开始初步引入 PGO。PGO 即 Profile Guided Opti...
前言 2021/4/8 .NET 6 Preview 3 发布,这个版本的改进大多来...
前言 开头防杠:.NET 的基础库、语言、运行时团队从来都是相...