- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
因此,当有人将我的 nuget 包添加到他们的代码中时,我尝试替换 dependentAssembly。
我要更改的程序集是:
<dependentAssembly>
<assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.1.0.0" newVersion="3.1.0.0" />
</dependentAssembly>
因此,我使用此 xml 文件并从以下位置获取帮助:Web.config transforms - the missing manual
<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly xdt:Transform="Replace" xdt:Locator="Condition(./_defaultNamespace:assemblyIdentity/@name:'Common.Logging.Core')">
<assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.1.0.0" newVersion="2.2.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
但我收到错误:对项目中的“web.config”应用转换时发生错误:“blabla”具有无效的限定名称。
注意到,当我将“替换”更改为“删除”时,它会删除完整的 dependentAssembly,但后来不知何故,它再次将相同的 dependentAssembly 添加到 web.config 中。也许是因为 Common.Logging.Core 依赖项是在 web.config 转换后添加的?
也许这就是替换不起作用的原因?
最佳答案
试试这个:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<!-- first completely remove the parent element -->
<dependentAssembly xdt:Transform="RemoveAll"
xdt:Locator="Condition(starts-with(./_defaultNamespace:assemblyIdentity/@name,'Microsoft.Diagnostics.Tracing.EventSource'))">
</dependentAssembly>
<!-- then add the new block -->
<dependentAssembly xdt:Transform="Insert">
<assemblyIdentity name="Microsoft.Diagnostics.Tracing.EventSource" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.1.16.0" newVersion="1.1.16.0 " />
</dependentAssembly>
</assemblyBinding>
</runtime>
关于asp.net - 如何在 Web 配置中转换替换 dependentAssembly?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30911209/
我的构建服务器 (TFS/Visual Studio Online) 上出现以下错误: CA0055 : Could not load C:\a\Binaries\Api.dll. The follo
我想直接链接到在编译/运行时使用的 Dll。我的程序布局是这样的:控制台 Exe 启动 winform dll。那个dll是用一堆dll来执行的。 Appconfig 位于winform dll 的项
因此,当有人将我的 nuget 包添加到他们的代码中时,我尝试替换 dependentAssembly。 我要更改的程序集是: 因此,我使用此 xml 文件并从以下位置获
我试图在运行时向我的 Web.config 文件添加一个新的 dependentAssembly。到目前为止,我当前的代码有 XmlNamespaceManager manager = new
我正在使用一个应用程序,其中包括一个非托管客户端 DLL 和一个托管 COM 服务器 DLL(这本身就是一个挑战:Managed Reg-Free COM Server Won't Activate)
(我正在运行 Windows7 并使用 Visual Studio 2010。) 我在 .NET Azure 项目中使用 ClamAV,并且每当我通过我的代码或通过自己运行 clamd.exe 运行
我是一名优秀的程序员,十分优秀!