【问题标题】:Assembly resolution in UnityUnity 中的大会决议
【发布时间】:2010-02-02 19:02:36
【问题描述】:

我有一个托管在 IIS 中的 WCF 服务项目。主 SVC 文件位于 Web 应用程序文件夹的根目录中,而 bin\ 文件夹中是实际的 dll。 web.config(也在根目录中)包含所有统一映射。不幸的是,似乎因为具体程序集等存在于 bin\ 文件夹中,Unity 找不到它们。

Unity 配置文件中是否有一种方法可以指定 DLL 可能存在的路径(有点像探测) - 或者以某种方式将路径放入映射本身?如果可以避免的话,我实际上不想修改 machine.config 等中的探测路径。

我查看了 MSDN 和 Google 搜索,但找不到任何帮助。

有什么想法吗?

【问题讨论】:

  • 您确定问题出在 Unity 难以定位 /bin 下的程序集吗?我问是因为它应该毫无困难地做到这一点。您能否提供更多详细信息或示例代码和 Unity 配置 XML?
  • 如果将其设置为 IIS 中的应用程序,查找它们应该不会有问题。它不太可能是 Unity 问题。
  • 是的,最后我意识到这不是统一问题,它与 IIS 或其他有关 - 抱歉,不记得最后的解决方案是什么!

标签: wcf iis unity-container


【解决方案1】:

我也怀疑这是 Unity 问题。您是否尝试过使用 Fusion 日志查看器 FUSLOGVW.EXE 查看应用程序尝试加载的内容以及它在哪里寻找程序集?

http://www.ademiller.com/blogs/tech/2008/01/gotchas-fusion-log-viewer-your-best-friend-for-assembly-load-errors/

这应该告诉你当前探测路径是什么样的,你可以从那里得到它。

【讨论】:

    【解决方案2】:

    这最终不是 Unity 问题 - 更多的是我试图在 IIS 中托管应用程序并且必须正确配置它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-17
      • 2019-03-12
      • 1970-01-01
      • 2014-04-06
      相关资源
      最近更新 更多