尝试使用JavaScriptSerializer将JSON反序列化为EntityFramework时出现异常

时间:2010-07-14 19:35:39

标签: c# json entity-framework serialization

我正在尝试使用以下代码将我从外部源获取的JSON反序列化为Entity Framework实体类:

var serializer = new JavaScriptSerializer();
IList<Feature> obj = serializer.Deserialize<IList<Feature>>(json);

抛出以下异常:

  

类型为'System.Collections.Generic.List 1[JustTime.Task]' cannot be converted to type 'System.Data.Objects.DataClasses.EntityCollection 1 [JustTime.Task]'的对象。

我的模型很简单:Feature类与Tasks类有一对多的关系。问题似乎是反序列化器试图创建一个通用List来保存任务集合而不是EntityCollection。

我已经尝试实现一个JavaScriptConverted来处理System.Collections.Generic.List但它没有被反序列化器调用。

1 个答案:

答案 0 :(得分:0)

您无法将列表直接分配给EF集合。你必须添加它。因此,反序列化为POCO然后复制。