此问题在此处已有答案:
What Nuget packages must be referenced by an ASP.NET Core 6 application parts project(1个答案)
21天前关闭
我有一个.NET 6 API,我想在mediatr命令中获取HttpContext,我在文档中读到可以用builder.Services.AddHttpContextAccessor();
注册HttpContextAccessor,我没有问题,但是当我想在命令的构造函数中注入IHttpContextAccessor时,我的IDE告诉它不能解析符号。我也看了多个其他来源,它们大多指向要安装的microsoft.aspnetcore.http
或microsoft.aspnetcore.app
。可悲的是,这些nuget软件包已被弃用,所以我正在寻找一个不使用这些软件包的解决方案。
PS:API和mediatr命令不在同一个项目中
我已经在多个其他网站上寻找答案,但他们要么没有指定他们正在使用的软件包,要么他们使用一个过时的软件包。
1条答案
按热度按时间nr9pn0ug1#
若要在非web.sdk项目中使用ASP.NET Core 3+类型,请使用共享框架引用。
示例项目:
字符串
然而,请注意,这主要是为了提供具有端点等的库。在业务层中使用此引用将业务逻辑与Web API框架耦合。
更灵活的方法是在业务逻辑项目中为所需的功能提供接口,并在API项目中提供实现。
举个例子