如何将第三方dll从bin文件夹移动到ASP.NET Web Forms项目中的另一个文件夹?

时间:2016-12-08 09:05:29

标签: c# asp.net dll webforms bin-folder

Bin文件夹中有一些第三方dll。我想将它们移动到root / lib路径。我认为,将文件移动到lib文件夹是不够的。我怎么能安全地做到这一点?这些是dll;

  • Microsoft.Web.Infrastructure.dll
  • Newtonsoft.Json.dll
  • NReco.PdfGenerator
  • System.Web.Optimization.dll
  • WebGrease.dll

更新:我跟着these instructions,我收到了一个错误信息; 类型或命名空间名称'优化'名称空间中不存在System.Web'

此行发生错误:using System.Web.Optimization;

我在根目录下创建了一个新的lib文件夹,将System.Web.Optimization.dll文件移动到了lib。然后,我编辑了我的web.config,如下所示;

    <runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  <dependentAssembly>
    <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />
  </dependentAssembly>
  <probing privatePath="bin;lib"/>
</assemblyBinding>

2 个答案:

答案 0 :(得分:0)

您可以查看以下链接。

How to move all referenced DLLs into seperate folder in c#?

希望这有帮助!

答案 1 :(得分:0)

我在this question找到了答案。因此,如果您想将第三方dll移动到新文件夹,您可以按照以下步骤操作;

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <probing privatePath="Bin;folder_path"/>
    </assemblyBinding>
</runtime>
  1. 创建一个新文件夹以移动dll
  2. 像上面一样更新web.config
  3. 在system.web标记之间添加移动的程序集

    <add assembly="System.Web.Optimization" />
    <add assembly="Telerik.Web.UI" />