没有 GAC 也是可能的,但程序集必须是强命名的,并且您必须在版本或 publickeytoken 更改时对 app.config 进行更改。这就是我在 \ 中的主程序,在 \Shared 中的共享库。和一个我想在 \SDK 中分离的子程序,它使用 ..\Shared 作为程序集。
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="shared" />
<dependentAssembly>
<assemblyIdentity name="protobuf-net" publicKeyToken="257b51d87d2e4d67" />
<codeBase version="1.0.0.282" href="../protobuf-net.dll"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="SevenUpdate.Base" publicKeyToken="5d1aea1de74f122c" />
<codeBase version="11.5.4.0" href="../SevenUpdate.Base.dll"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="SharpBits.Base" publicKeyToken="5d1aea1de74f122c" />
<codeBase version="11.5.5.0" href="../SharpBits.Base.dll"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Windows" publicKeyToken="5d1aea1de74f122c" />
<codeBase version="11.5.5.0" href="../System.Windows.dll"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WPFLocalizeExtension" publicKeyToken="5d1aea1de74f122c" />
<codeBase version="11.5.5.0" href="../WPFLocalizeExtension.dll"/>
</dependentAssembly>
</assemblyBinding>
</runtime>