Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在VisualStudio中快速注入依赖项?_C#_Visual Studio_Asp.net Core - Fatal编程技术网

C# 如何在VisualStudio中快速注入依赖项?

C# 如何在VisualStudio中快速注入依赖项?,c#,visual-studio,asp.net-core,C#,Visual Studio,Asp.net Core,当我在一个ASP.NET核心项目上编码时,我需要一些服务,比如\u tokenManager,我必须添加一个新的依赖注入,如下所示: 为控制器添加新的依赖项至少需要3行代码,所以这并不容易。当我需要几个依赖项时,它会花费我很多时间 顺便说一句,当我更改代码时,某些依赖项可能不是必需的,应该删除。我必须一个接一个地检查这些依赖项,以确保每个依赖项都是必要的。那么,当我尝试使用这些依赖项并建议我删除那些不必要的依赖项时,是否有任何简单的方法可以自动添加这些依赖项 VisualStudio似乎已经有

当我在一个ASP.NET核心项目上编码时,我需要一些服务,比如
\u tokenManager
,我必须添加一个新的依赖注入,如下所示:

为控制器添加新的依赖项至少需要3行代码,所以这并不容易。当我需要几个依赖项时,它会花费我很多时间

顺便说一句,当我更改代码时,某些依赖项可能不是必需的,应该删除。我必须一个接一个地检查这些依赖项,以确保每个依赖项都是必要的。那么,当我尝试使用这些依赖项并建议我删除那些不必要的依赖项时,是否有任何简单的方法可以自动添加这些依赖项

VisualStudio似乎已经有了这个功能。如何启用此功能?

我找到了一个解决方案

如果先编写注入依赖项,如下所示:

公共类MyController
{
私有只读MyDependency实例
公共MyController()
{
}
}
Visual Studio不会为您提供完成此操作的建议

但如果您首先在构造函数中编写依赖项,如下所示:

公共类MyController
{
公共MyController(
MyDependency实例
)
{
}
}


Visual Studio 2019将帮助您完成此任务。

universe中的任何工具如何在设计时找到所有运行时依赖项,或者如何发现在运行时不再需要特定的IFoo?@vasily.sib在TypeScript中,DI只需要一行代码。我想可能有更简单的方法或快捷方式来注入一行,而不是键入3行。@Anduin,你能告诉我如何用1行在TypeScript中进行DI吗?@vasily.sib@Anduin,还有3行。无论如何,TypeScript-JavaScript的工作是松散类型的,而C#是强类型的
Ctrl
+
的唯一原因是非常有用的,可以在其他情况下使用它well@vasily.sib我知道
Ctrl+。
可以应用一些VisualStudio建议,但我在第一次尝试时遇到了困难,无法找到上面提到的答案。在我询问微软的官员之前,我是否找到了快速完成依赖注入的正确方法。顺便说一句,谢谢你的意见。