ASP.NET Core - 使用 [FromServices] 属性可能会出现哪些挑战或问题? [关闭]
2024-03-01
我在 ASP Core MVC 中有一个控制器。我正在尝试减少构造函数中的依赖注入服务,以便我可以更轻松地开始构建单元测试。但是,我注入了一些仅在一个或两个控制器操作中使用的服务。例如我注入ILocationService因为在我的一些操作中,我需要查找一个国家/地区Id号并使用数据库获取 ISO Alpha-2 国家/地区代码(例如,将 ID 号 1 映射到“CA”,将 2 映射到“US”等)
Asp Core 支持[FromServices]属性,所以我可以选择注入ILocationService直接进入我的两个操作,而不是将它们注入控制器构造函数中。这样做的好处是我不需要总是模拟/注入ILocationService从每个单元测试进入我的控制器,并且在编写每个功能所依赖的服务的单元测试时更加清楚。