gpt4 book ai didi

asp.net-mvc - ASP.NET MVC 升级到 Beta : IControllerFactory is defined in an assembly that is not referenced

转载 作者:行者123 更新时间:2023-12-02 00:46:19 25 4
gpt4 key购买 nike

我目前正在将站点从 ASP.NET MVC 预览版 2 更新到 Beta 版。经过详尽的搜索后,我遇到了最后一个编译错误,站点中没有解决方案。我在 Global.asax.cs 中有一些代码使用 Windsor 容器设置 IOC:

ControllerBuilder.Current.SetControllerFactory(typeof(WindsorControllerFactory));

编译器提示:

The type 'System.Web.Mvc.IControllerFactory' is defined in an assembly that is not referenced. 
You must add a reference to assembly 'System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.

奇怪的是这个程序集引用了。我从 MVC beta 程序集文件夹中引用它并设置为复制本地。我什至可以删除bin目录,重建,然后在反射器中查看程序集并看到界面。我试过删除并重新添加引用,更改 web.config 的程序集和命名空间部分。我什至从 GAC 中删除了 System.Web.Mvc 以确保它使用了正确的副本。

在写这个问题时,我突然想到,也许 Windsor 在内部期待旧版本的程序集。我正在从 MvcContrib 下载最新版本以确定这是否是问题所在,然后我将发布结果。如果是这种情况,程序集的版本号不应该随着最新版本的变化而改变以使其显而易见吗?

感谢阅读,布雷特

最佳答案

PublicKeyToken=null 好像不对...

编辑:我是对的,PublicKeyToken 应该是“31bf3856ad364e35”。听起来它们与未签名的 System.Web.Mvc.dll 的私有(private)版本相关联。

关于asp.net-mvc - ASP.NET MVC 升级到 Beta : IControllerFactory is defined in an assembly that is not referenced,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/358260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com