1

我的意图是使用 linq to sql 为 Windows Phone 创建一个通用的(不是 C# 的意思)数据库模型。此类模型的用户应该能够将他的数据对象类型(标有 Table 属性的类)的数组传递给模型的构造函数,然后模型应该注意将相关表添加到数据库并为 CRUD 操作提供 API。

但后来我发现,为了将表添加到数据库,您的数据上下文(从 DataContext 类继承的类)必须将每个表声明为属性!这很尴尬。这个事实是否意味着我的想法不可行?因为我显然无法在运行时向基于 DataContext 的属性添加属性。

所以我的问题是,我的判断是否正确?如果是,是否有一些解决方法可以解决此问题?

提前致谢。

编辑:更好的问题标记,因为有人终于注意到了这一点。

4

1 回答 1

1

您不需要使用强类型(从每个表DataContext继承并声明属性的类)。DataContext您可以改为执行以下操作

var context = new DataContext("connection string", new AttributeMappingSource());

var table = context.GetTable<T>();

哪里是用属性T标记的某种类型。Table

于 2012-12-27T15:17:50.957 回答