2010-04-14 102 views
3

在我的视图中,我试图循环访问作为View Model的一部分的LINQ对象中的列表。今天早些时候,VS2010 RC和.NET 4.0 RC运行良好。从ASP.NET 4.0 RC升级到RTM后在ASP.NET MVC 2视图中出现错误

<% if (Model.User.RoleList.Count > 0) { %> 
    <% foreach (var role in Model.User.RoleList) { %> 
     <%: role.Name %><br /> 
    <% } %> 
<% } else { %> 
     <em>None</em><br /> 
<% } %> 

它用来愉快地喷出角色名称列表。没有数据或代码已经改变。只需将软件从RC升级到RTM即可。

我正的错误是这样的:

\视图\用户\ Details.aspx(67):错误CS0012:类型 'System.Data.Linq.EntitySet`1' 在组件被定义未被引用。您必须添加对程序集“System.Data.Linq,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089”的引用。

但引用了System.Data.Linq。我在参考列表中看到它。我试着删除它并重新添加它,但我得到了同样的错误。

任何想法?

回答

10

固定。我不得不添加

<add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, publicKeyToken=b77a5c561934e089" /> 

要在Web.config中的system.web/compilation/assemblies。

它为什么在以前工作?世界可能永远不会知道。

+1

我当然不知道,但都谢谢。 :-)解决了我的问题... – 2010-07-13 08:25:00

+0

+1因为我喜欢知道我什么时候帮助某人。 – Chris 2010-07-18 23:57:27

+1

现在,这是两个人的最低限度(这甚至不包括我的团队中的其他人)。 – Tom 2010-08-04 19:49:35