Visual studio -如何要求引用dll
本文关键字:引用 dll studio Visual | 更新日期: 2023-09-27 18:08:21
我有一个有一些dll引用的项目,我想使这些dll成为必需的参考。
示例:我的项目名为Main.dll,并引用了Dep1.dll和Dep2.dll。如果有人引用Main.dll,我希望该项目将失败编译,除非他引用Dep1.dll和Dep1.dll。(就像那些错误" reference required for assembly..")
有人知道我该怎么做吗?
这归结为包管理。如果你只是部署dll,那么你现在所能做的就是说"你还需要添加一个对{whatever}.dll的引用"。但是,如果你使用像NuGet这样的工具(你可以有私有/本地NuGet库等);其他包管理工具可用),您可以告诉包管理工具有关依赖项,并且它将自动添加它们。
答案是你不能,除非你使用与Dep1.dll中的类相关的方法/属性/构造函数等。
例如。
Dep1.dll
Dep1Class.cs
Main.dll
References
Dep1
MainClass.cs
OtherComponent.dll
References
Main
OtherComponentClass.cs
public class MainClass
{
public Dep1Class Dep1Property { get; set; }
}
public class OtherComponentClass
{
public OtherComponentClass
{
var x = new MainClass();
//// compile error, The type 'Dep1.Dep1Class' is defined in an assembly that is not referenced. You must add a reference to assembly 'Dep1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
//x.Dep1Property = null;
}
}