如果我有一个项目使用我自己制作的.dll而且这个.dll没有在GAC注册,而只是在我的项目App的同一个文件夹中。例如C:\ Program Files(x86)\ MyApp Folder。
我可以,更重要的是,如果我想构建第二个也使用此.dll的项目,我该如何正确引用此.dll。我可能会构建一些使用此.dll的小应用程序。
在这种情况下,我必须在GAC中使用它,或者如果它不存在,我必须做什么?
答案 0 :(得分:3)
如果我有项目......
你永远不应该让自己处于只是项目的境地。您首先要有一个解决方案。一组项目,它们共同构建一个应用程序。项目当然彼此依赖,你使用项目依赖来告诉编译器。它自动处理参考组件,一个项目的输出成为另一个项目的参考。您对此类项目的源代码所做的任何更改都会自动传播到其他项目。
这通常是团队采取的。
然而,对于包含许多项目的非常大的解决方案而言,这往往不能很好地工作,Visual Studio往往会变得迟钝而且构建可能需要很长时间。在这种情况下采取的一个重要步骤是冻结根项目。程序员需要获得对此类核心项目进行更改的明确权限。因为这种变化往往非常不稳定,需要对依赖项目进行许多更改。并有效地摧毁了许多小时的测试和验证时间。
您可以通过从解决方案中明确删除项目来执行此操作。现在自动使其难以进行更改。需要更新依赖项目以使用显式引用程序集而不是项目依赖项。选择一个众所周知的装配位置很重要。源控件或(最好)构建服务器有助于成为程序集的源。像Nuget这样的工具非常有用。