【发布时间】:2019-02-08 01:00:01
【问题描述】:
对于 DI 有哪些集成选项,我有点困惑。我认为.net core(对于我的特定项目)非常简单,但我不需要构建跨平台应用程序,也看不到使用 core 的优势。但是,看起来 .net 框架应用程序仍然使用 Global.asax 而没有 Startup.cs 设置,这是否意味着 .net 框架 4.7 没有集成的 DI 选项?我是否仍需要获得第 3 方解决方案,或者是否有办法在 .net 框架项目中使用与核心项目中相同的 DI 工作流?
【问题讨论】:
-
DI 是仅在 dotnet 核心中的一等公民,您唯一的选择是 Autofac 或 Ninject 等框架
-
@saj 好的,谢谢。太糟糕了:/
-
在 ASP.NET Core 2.2 之前你可以拥有一个完整的 .NET Framework ASP.NET Core 应用程序
-
您没有看到 .NET Core 的优势吗?即使您对跨平台不感兴趣,仍然有改进的 csproj 和使用 VS 之外的 IDE 的能力、将框架与应用程序一起发布的能力(支持并行部署、更好的性能、更多的命令行选项、更好的容器支持等。如果你开始新的开发,你绝对应该使用 .NET Core 而不是 .NET Framework。.NET Core/Standard 应该是默认选择,并且只有在有特定原因时才应该使用 .NET Framework这样做。
-
@mason Lol,我理解你为什么以你的方式解释我的评论,但我绝对不是那个意思。是的,当然我完全得到了.net core 的好处,我认为它真的很酷。我真正的意思是,我不认为将我们现有的项目转换为 .net 核心来证明所涉及的工作有任何显着优势。很抱歉造成混乱。不要恨我。 :)
标签: asp.net-mvc dependency-injection