匿名类型动态对象错误cant隐式将字符串转换为int

时间:2015-08-21 14:59:21

标签: c# asp.net deserialization

为了使用动态字段在运行时绑定到linq结果集的asp网格(因此我无法创建模板字段),我决定尝试序列化表格的结果并将其放入在gridview的排序事件中调用,反序列化,排序和反弹的视图状态。

不幸的是,在事实之后分配给新类型会产生错误无法隐式转换类型' string' to' int',但我无法弄清楚为什么/它会尝试这样做。

直到失败点的代码是:

         string sSData = (string)ViewState["resultData"];
         JavaScriptSerializer jSS = new JavaScriptSerializer();
         dynamic dynObject = jSS.DeserializeObject(sSData);


         var resultsdDS = new 
         {
             Student_Forename = dynObject["Student_Forename"],
             Student_Surname = dynObject["Student_Surname"]
         };

dynObject中有正确的数据类型(有些是整数),但在选定的字段中没有,尽管错误表明它试图将字符串转换为int,反之则不然(并且这些字段在此测试中无论如何都没有分配)

任何可以帮助我理解正在发生的事情都会受到赞赏!

0 个答案:

没有答案