ASP.NET MVC2 与 Mono 2.6.7 和 MonoDevelop 2.6
当我编辑 Web 项目引用时,我在 GAC 中找不到 System.Web.MVC2 程序集。
这不是我所期望的,因为 Synaptic 包管理器报告 libmono-system-web-mvc2.0-cil 包已正确安装。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
MonoDevelop 的编辑引用列表中的程序集并非取自 GAC。 VS 和.NET 也是如此。 GAC 只能在运行时使用,不能在编译时使用。
当以 Mono 为目标时,MonoDevelop 使用名为“pkgconfig”的系统来发现程序集。当面向 .NET 时,它在注册表中使用与 VS 相同的“程序集文件夹”键。
请注意,在 MD 首选项中,您还可以添加其他文件夹来搜索 pkgconfig 文件或程序集 - 这是将它们正确安装到系统上的更简单的替代方案。
由于您使用 Ubuntu,它将 Mono 分成许多小包,因此可能 Mono 的程序集 pkgconfig 文件已被拆分为单独的 -dev 包,因此您可以尝试寻找它(尽管我不确定 2.6.0 是否可以)。 7 包含 pkgconfig 文件 - 也许您需要 2.8)。
另外,MonoDevelop 2.6 还不存在 - 您可能指的是 2.4。
Assemblies in MonoDevelop's Edit References list are not taken from the GAC. This is also true of VS and .NET. The GAC is only meant to be used at runtime, not compile time.
When targeting Mono, MonoDevelop uses a system called "pkgconfig" for discovering assemblies. When targeting .NET, it uses the same "Assembly Folders" keys in the registry that VS does.
Note that in MD Preferences you can also add additional folders to be searched for pkgconfig files or assemblies - this is intended as an easier alternative to properly installing them onto the system.
Since you use Ubuntu, which breaks Mono into many tiny packages, it's possible that Mono's pkgconfig file for the assembly has been split off into a separate -dev package, so you might try looking for that (though I'm not sure whether 2.6.7 included the pkgconfig file - maybe you'd need 2.8).
Also, MonoDevelop 2.6 does not yet exist - you probably mean 2.4.
尝试手动将其安装到 GAC。
并非所有程序集都需要位于 GAC 中。 ASP.NET MVC 程序集未安装在 GAC 中可能是有原因的(易于部署?)
Try installing it to the GAC manually.
Not all assemblies need to be in the GAC. There may be a reason the ASP.NET MVC assembly is not installed in the GAC (ease of deployment?)
您可能缺少
libmono-cil-dev
软件包。You are probably missing the
libmono-cil-dev
package.