Gab*_*ner 8 copy-local visual-studio
我有一个依赖于几个DLL引用的Visual Studio项目.以下是我的csproj中这些引用的示例:
<ItemGroup>
<Reference Include="Class1.Project1">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\bin\Class1.Project1.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Class1.Project2">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\bin\Class1.Project2.dll</HintPath>
<Private>False</Private>
</Reference>
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)
但是,当我将此类作为项目依赖项包含在Web站点项目中时,Visual Studio将查找上面显示的依赖项的依赖项.在构建期间,Visual Studio将"复制本地"属性默认为"True",并将这些依赖项复制到我的网站的〜/ bin目录中.
反过来,这会覆盖此目录中已存在的DLL文件的版本.这会导致以下错误:
无法加载文件或程序集'Class5.Project5,Version = 3.6.1861.2,Culture = neutral,PublicKeyToken = dfeaee0e3978ac79'或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(HRESULT异常:0x80131040)
如何让我的Visual Studio默认情况下,"复制本地"设置为"假"的一切?我不希望Visual Studio在构建期间自动复制DLL文件.我也不希望我的领带构建以非常一个DLL的特定版本.
我曾经遇到过这个问题
发布时:防止覆盖现有 dll 文件的最简单方法是将它们设置为只读。对于每个无法替换的文件,您将在发布时收到警告,但它会完成这项工作。
构建时:要自动关闭 CopyLocal,您需要将 dll 文件放在 GAC 上。
归档时间: |
|
查看次数: |
8116 次 |
最近记录: |