C#在解决方案级别的项目中使用类



在当前的解决方案中,我将有大约10个项目(控制台应用程序(,它们将使用Helper类中的相同功能。在过去,我只会在每个项目中复制粘贴这些文件夹,并添加对主类的引用。有没有一种方法可以只创建一次Helper类,并能够在该解决方案中的任何项目中使用它们,而无需复制它们或引用另一个项目?

此外,我必须在每个项目中导入相同的3个NuGet包,有没有办法在解决方案级别导入它们,这样它们就会自动添加到每个新项目中?我知道我可以右键单击解决方案,只需选择每个项目,而无需为每个项目手动执行,但可以为创建的每个新项目自动添加它们吗?

您需要编辑csproj,例如您有以下目录结构:

SolutionRoot
MyProject
MyProject.csproj
SharedFiles

要将SharedFiles目录中的文件作为名为Shared的虚拟文件夹添加到MyProject项目中,请在MyProject.csproj中添加以下行

<ItemGroup>
<Compile Include="..SharedFiles***.cs">
<Link>Shared%(RecursiveDir)%(FileName)%(Extension)</Link>
</Compile>
</ItemGroup>

是否有一种方法可以只创建一次Helper类,并能够在该解决方案中的任何项目中使用它们,而无需复制它们或引用另一个项目?

简单答案否。您必须在项目中定义可在其他控制台应用程序中引用的助手类。

此外,我必须在每个项目中导入相同的3个NuGet包,有没有办法在解决方案级别导入它们,这样它们就会自动添加到每个新项目中?我知道我可以右键单击解决方案,只需选择每个项目,而无需为每个项目手动执行,但可以为创建的每个新项目自动添加它们吗?

同样不,您不能在解决方案级别将NuGet引用应用于新项目。但是,您可以创建自己的项目模板,该模板可以设置为配置包/项目引用。

相关内容

  • 没有找到相关文章

最新更新