Saya datang ke sini dari pertanyaan lain (duplikat bertanda) tentang menambahkan tag probing ke file App.Config.
Saya ingin menambahkan sidenote ke ini - Visual studio telah menghasilkan file App.config, namun menambahkan tag probing ke tag runtime yang dibuat sebelumnya tidak berfungsi! Anda memerlukan tag runtime terpisah dengan tag probing disertakan. Singkatnya, App.Config Anda akan terlihat seperti ini:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Text.Encoding.CodePages" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.1.0" newVersion="4.1.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<!-- Discover assemblies in /lib -->
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="lib" />
</assemblyBinding>
</runtime>
</configuration>
Butuh beberapa waktu untuk mencari tahu jadi saya mempostingnya di sini. Juga menerima Paket The PrettyBin NuGet . Ini adalah paket yang memindahkan dll secara otomatis. Saya menyukai pendekatan yang lebih manual sehingga saya tidak menggunakannya.
Juga - di sini adalah skrip pembuatan pos yang menyalin semua .dll / .xml / .pdb ke / Lib. Ini membuka folder / debug (atau / release), apa yang saya pikir orang capai.
:: Moves files to a subdirectory, to unclutter the application folder
:: Note that the new subdirectory should be probed so the dlls can be found.
SET path=$(TargetDir)\lib
if not exist "%path%" mkdir "%path%"
del /S /Q "%path%"
move /Y $(TargetDir)*.dll "%path%"
move /Y $(TargetDir)*.xml "%path%"
move /Y $(TargetDir)*.pdb "%path%"