3

在我的视图中,我试图遍历作为我的视图模型一部分的 LINQ 对象中的列表。今天早些时候,这在 VS2010 RC 和 .NET 4.0 RC 上运行良好。

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

它曾经很高兴地吐出一个角色名称列表。没有数据或代码已更改。只需将软件从 RC 升级到 RTM。

我得到的错误是:

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

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

有任何想法吗?

4

1 回答 1

10

固定的。我不得不添加

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

到system.web/compile/assembly中的Web.config。

为什么之前有效?世界可能永远不会知道。

于 2010-04-14T04:11:02.877 回答