通过扩展类将Entity Framework对象变为泛型类?

时间:2011-04-06 21:38:42

标签: c# entity-framework generics javascriptserializer

我有一个名为PagePreference的EF对象。相应的表包含三个字段:UserName(PK,varchar(200),not null),PageName(PK,varchar(700),not null)和PageState(text,null)。 PageState字段包含序列化(json)对象。我有另一个类文件,它通过'partial'关键字扩展这个EF对象。我的想法是,在任何给定页面上,我都可以创建一个对象来包含页面状态,并将其序列化到PagePreference对象的PageState字段中。每个页面都有一个不同的PageState对象,因此它们彼此不兼容。因此,我希望PagePreference对象使用泛型(例如PagePreference),以便在加载对象时,可以将页面状态反序列化为适当的类('T')。但是,当我将通用符号添加到扩展的PagePreference对象时,VisualStudio认为它是一个新的对象。有人知道如何让这个工作吗?

1 个答案:

答案 0 :(得分:2)

这种情况很自然,因为泛型和非泛型类不一样。没有办法,我害怕直接这样做,因为实体是自动生成的。然而,你可以尝试做的是use POCOs你应该能够塑造你想要的东西。

在尝试自己测试之后,我发现EntityFramework不支持泛型。即使有POCO。 (也许还没有;))