Mono无法加载ServiceStack.Interfaces.dll

时间:2013-10-06 16:37:22

标签: c# macos mono servicestack

在OS X上使用Mono(MDK 3.2.3)并根据MonoMVC's instructions安装NuGet,我试图关注the "your first webservice" tutorial in ServiceStack's documentation。本教程假定IIS和Visual Studio(我的环境中都不存在),并且在互联网上搜索解决方案几个小时后,我已完成以下额外步骤,但未提及:

  • web.config示例包装在<configuration>标记中。
  • 将Hello类的源代码放在名为App_Code
  • 的文件夹中
  • 将NuGet下载的所有.dll个文件复制到名为bin的文件夹中

    find . -iname '*.dll' -exec cp {} bin \;

  • 使用项目根文件夹中的xsp4来托管开发服务器。
  • System.Core.dlllib/mono/4.5复制到我项目的bin文件夹。

当我尝试访问localhost:8080时,我现在收到此错误消息:

  

System.Web.Compilation.CompilationException
CS1684:对类型ServiceStack.ServiceHost.IResolver的引用声明已定义   汇编ServiceStack.Interfaces, Version=3.9.60.0, Culture=neutral, PublicKeyToken=null,但无法找到

如何解决此错误?


编辑:删除了对 Missing method .ctor 错误的引用,因为它们与上面的CompilationException无关。如果我将 System.Core.dll lib/mono/4.5复制到bin文件夹,它们就会消失,但CompilationException仍然存在。

1 个答案:

答案 0 :(得分:1)

在linux上构建ServiceStack项目时遇到了类似的错误。项目本身没有直接引用一个程序集(我相信)引用的程序集引用了它。

我直接向主项目添加了对程序集的引用,错误就消失了。

我的回购在这里:https://github.com/MarFarMa/ServiceStack.Hello - 它在ubuntu上构建并成功运行 - 如果你想尝试它而不是你一直关注的教程。