c# - 带有 ASP.NET Core 和完整 .NET Framework (.NET 4.7) 的简单注入器
问题描述
我正在使用带有完整 .NET 框架的 ASP.NET Core,并想尝试 Simple Injector。在 Nuget 管理器中,我看到了 Simple Injetcor 的许多选项,例如“SimpleInjector.Integration.AspNetCore.MVC”和“SimpleInjector.Integration.AspNetCore.Mvc.Core”我看不到发布或依赖项有任何差异。
请根据我正在使用的框架设置建议应该使用哪个 NuGet。
解决方案
Simple Injector 文档的ASP.NET Core 集成指南描述了要使用的 NuGet 包。请参阅第一段,但不要忘记阅读整页。
但具体来说,SimpleInjector.Integration.AspNetCore.MVC是完整的集成包,它“在核心功能之上添加了标签助手集成”,并且依赖于Microsoft.AspNetCore.Mvc.Razor。核心集成功能是 SimpleInjector.Integration.AspNetCore.Mvc.Core的一部分,“包括控制和视图组件集成”。
要将 Simple Injector 与 ASP.NET Core MVC 集成,您应该使用SimpleInjector.Integration.AspNetCore.MVC
集成包,除非您不需要标签助手集成并且想要限制Microsoft.AspNetCore
应用程序中包的依赖项数量,这可能是您运行时的问题在(Docker)容器内。在这种情况下,SimpleInjector.Integration.AspNetCore.Mvc.Core
直接使用。
推荐阅读
- python - 我需要根据条件删除所有行,但如果列中有空条目,我想保留这些行
- regex - 在字符串中查找多个
- php - Apache .htaccess 2 个方向
- php - 无论URL如何,如何运行相同的php脚本
- c++ - 我可以在鼠标 HID 描述符中设置一个相对轴和一个绝对轴吗?
- c++ - 在树中删除但只有一些节点
- sql - 使用 drop 命令和 create 命令的 SQL 错误
- vim - 是否可以在以下至少一个编辑器中使用 markdown 语法中的多色标题:Sublime Text 3、Vim 或 Visual Studio Code?
- javascript - d3 图表中未显示轴标签
- android - Freshchat push notification via Firebase (Android)