好的,所以在 Sen Jacob 提供的几个链接和更多研究的帮助下,我发现只需使用 web.config 就可以完成所有工作。
首先,我们需要提供新路径并告诉程序集名称,因为我们正在远离默认值:
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="Something.Web" />
</assemblies>
</compilation>
</system.web>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="bin\debug" />
</assemblyBinding>
</runtime>
</configuration>
现在,出于某种原因,人们建议在其他任何地方指定privatePath
相对于 bin dir (即privatePath="debug"
),但是在我的情况下,它必须相对于应用程序根目录(即如上所述)。也许这是 .net4 的更改或我缺少的其他配置设置,不确定;如果有人有更好的主意,请随时编辑/评论。
在这个阶段,如果服务器找到文件,并成功加载程序集和类,它将开始抱怨所有丢失的引用文件,我必须在旁边添加<add assembly="Something.Web" />
:
<assemblies>
<add assembly="Something.Web" />
<add assembly="System.Web.Mvc" />
<add assembly="System.Web.Optimization" />
<add assembly="System.Web.Helpers" />
<add assembly="System.Web.WebPages" />
</assemblies>
根据我收集的内容,它会在站点启动时重新编译程序集(不确定)。
资料来源:
1
2
3