无法进行铸造

时间:2012-03-13 11:43:44

标签: asp.net-mvc-3 casting

我有这个:

<%foreach (var item in (List<MyClass>)ViewData["something"]) {%>

并抛出异常:无法将类型为'&lt;&gt; f__AnonymousType0 1[System.Collections.Generic.List 1 [MyClass]]'的对象输入'System.Collections.Generic.List`1 [MyClass]'。

ViewData [“something”]包含一个带有四个元素的myClass对象。怎么解决这个问题?

var xx= (from x in be.x
                 select x).ToList();
ViewData["something"] = new { xx };

1 个答案:

答案 0 :(得分:2)

您的问题是您正在尝试使用属性列表的匿名对象进行转换。

要修复它,请从

更改
var xx = (from x in be.x select x).ToList();
ViewData["something"] = new { xx };

var xx = (from x in be.x select x).ToList();
ViewData["something"] = xx;