在其中包含一个匿名类型的对象铸造匿名类型抛出铸造错误
Application["userRecordsCountList"] = new ArrayList();
((System.Collections.ArrayList)Application["userRecordsCountList"]).Add(new { userCount = 12, logTime = DateTime.Now });
现在
在我的CS文件我有一个转换函数,这是这样的
我已经建立了我的Global.asax文件和数组列表T Cast<T>(object obj, T type)
{
return (T)obj;
}
现在,当我运行的循环来遍历数据,并提取数据集我得到一个错误 看到代码的数据
ArrayList countRecord = new ArrayList((System.Collections.ArrayList)Application["userRecordsCountList"]);
foreach (var item in countRecord)
{
dr = dt.NewRow();
var record = Cast(item, new { userCount = "", logTime = "" });
dr["Time"] = record.logTime;
dr["Users"] = record.userCount;
dt.Rows.Add(dr);
}
误差
Unable to cast object of type '<>f__AnonymousType0`2[System.Int32,System.DateTime]' to type '<>f__AnonymousType0`2[System.String,System.String]'.
请帮我..我都想尽方法我在计算器或任何其它来源发现.....
日Thnx
你阅读的信息?你的类型是错误的。 – SLaks 2011-12-27 15:23:53
你的方法'Cast()'的签名/代码是什么? – 2011-12-27 15:24:59
@SLaks这不是问题...运行代码并自己检查 – 1Mayur 2011-12-28 05:20:21