无法访问.net标准中的httpcontext扩展方法

问题描述 投票:0回答:1

我有这个.NET Standard库,我想在其中编写.NET Core中间件。

我想在里面做的事情:

Endpoint endpoint = httpContext.GetEndpoint();

GetEndpoint()扩展方法无法解析。

我已经引用了Microsoft.AspNetCore.Http,并且我已经将Microsoft.AspNetCore.Http.AbstractionsMicrosoft.AspNetCore.Mvc.Core包都添加到了项目中。

是否有解决方案,我是否缺少某些东西?

c# asp.net-core .net-standard asp.net-core-3.1
1个回答
0
投票

由于包含了“ asp.net-core-3.1”标记,因此我假设您正在为ASP.NET Core 3.1编写中间件。

要使用该扩展名,您需要定位netcoreapp3.*而不是netstandard2.*

<TargetFramework>netcoreapp3.1</TargetFramework>

((您可以在documentation页面的下拉菜单中看到该扩展名适用的ASP.NET Core版本)

您还将需要:

  1. 使用Microsoft.NET.Sdk.Web MSBuild SDK:
    <Project Sdk="Microsoft.NET.Sdk.Web">
    
  2. 或添加框架参考:
    <FrameworkReference Include="Microsoft.AspNetCore.App" />
    

参考:Use ASP.NET Core APIs in a class library

© www.soinside.com 2019 - 2024. All rights reserved.