5

在 Visual Studio 2005/2008 中使用强类型数据集时,如果基础数据库架构发生更改,唯一实用的刷新方法是删除数据集并从头开始重新创建。这没关系,除非我需要自定义数据集。

通过扩展部分数据集类进行自定义允许保留自定义,但随后一个简单的 FillBy() 再次变成一长串 SQL。

有什么方法可以在不丢失数据集自定义的情况下将数据集与数据库模式重新同步?

4

4 回答 4

2

如果您只是进行简单的更改,例如向表格添加字段,那么我右键单击表格并单击配置。再次通过向导添加新字段(甚至将 select 替换为 select *),它将字段添加到表中并同步您构建的所有查询。我有大约 10 个不同的自定义查询的表,当我重新配置表时,查询都正确更新。

于 2008-11-15T20:39:29.087 回答
2

因为类型化的数据集使用生成的嵌套类,所以定制经常会丢失。我所做的是生成类型化的数据集,然后将几个类标记为部分。然后我创建包含重复嵌套类结构(也标记为部分)的单独文件。

这样我就可以重新生成我的数据集,而我唯一需要做的更新就是返回并再次使它们成为局部的。我的自定义设置保存在单独的文件中。

于 2008-11-15T20:48:41.440 回答
0

类型化数据集是邪恶的。LINQ to SQL 应该是类型化数据集,所以我喜欢将其视为类型化数据集 3.0。我希望当他们将 L2S 折叠到实体框架中时,他们保留了 L2S 如此出色的原因。

于 2008-11-15T21:06:28.083 回答
0

我在许多 Web 和 Windows 项目中都非常成功地使用了类型化数据集。一开始有一点发现——学习数据集设计器的所有怪癖,以及如何扩展数据集以提供更灵活的连接配置。但是一旦你克服了这一点,生成数据访问层将是快速的工作。

于 2008-12-16T12:01:49.573 回答