我刚刚安装了MVC 4 Beta,现在我的MVC 3应用程序并没有编译以下错误:
类型'System.Web.Mvc.ModelClientValidationRule‘既存在于'c:\Program (x86)\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies\System.Web.Mvc.dll’和'c:\Program (x86)\Microsoft ASP.NET\ASP.NET Web ASP.NET\ASP.NET 3\Assemblies\System.Web.Mvc.dll‘中。
这似乎已经移动到不同的程序集,而且由于这两个程序集都在GAC中,因此它不知道使用哪个程序集。
发布于 2012-03-04 02:25:29
在今天安装了MVC4测试版之后,我的一些MVC 3项目将不会编译。(ModelClientValidationRule冲突)修复方法是:
编辑:
ProjectName.csproj变化
<Reference Include="System.Web.WebPages"/> 至
<Reference Include="System.Web.WebPages, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL "/>发布于 2012-05-14 15:18:58
试试看这个解决方案。
在根Web.config文件中,添加一个带有关键网页的新条目:Version和值1.0.0.0。
<appSettings>
<add key="webpages:Version" value="1.0.0.0"/>
<add key="webpages:Version" value="1.0.0.0"/>
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
</appSettings>2.在“解决方案资源管理器”中,右键单击项目名称,然后选择“卸载项目”。然后右击名称,然后选择编辑ProjectName.csproj.
3.查找下列程序集引用:
<Reference Include="System.Web.WebPages"/>
<Reference Include="System.Web.Helpers" />代之以下列案文:
<Reference Include="System.Web.WebPages, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL "/>
<Reference Include="System.Web.Helpers, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL "/>4.保存更改,关闭正在编辑的项目(.csproj)文件,然后右键单击项目并选择Reload。
参考文献
也可以试试这
我找到了这个答案这里给我,第二个编辑和第一个结合解决了问题。
发布于 2013-03-29 08:39:12
只需删除System.Web.WebPages的引用即可。这将成功地构建您的项目。
https://stackoverflow.com/questions/9471263
复制相似问题