在 WPF/WinForms 中为数据库中的某些数据创建快速编辑器的最简单方法是什么,其中数据由 SQL Server 数据库中的 View 表示?
假设我有一个表 Person { id int, name nvarchar(max), GenderID int, CityID int}
,其中 GenderID 和 CityID 是对表 Gender 和 City 的引用。在编辑器中,Person 将显示为名称的文本框、性别的组合框(从 Gender 表中选择性别的名称),城市列也是如此。
有什么简单的方法可以让一些控制/代码生成这个吗?如果我只想选择数据,则 WinForms DataGridView 或 WPF DataGrid 可以为每个属性生成一列,并为集合中的每个对象显示一行。 -
如果关系是由外键定义的,是否有某种类似的魔术控制可以对数据库 View 执行此操作?
在我看来,成千上万的开发人员都面临过这种问题 - 快速创建一个 GUI 来编辑与其他表有关系的数据库行,因此应该有某种普遍接受的解决方案。或者每个人都在代码中这样做?或者,如果有其他语言的工具,不是 C#,也不是 Windows 窗体——比如 dBase。
最佳答案
您描述的是网络开发中所谓的脚手架。脚手架是一种为数据库中的每个表自动生成 UI 的方法。脚手架让您可以创建一个功能性 UI,用于根据数据模式查看和编辑数据。以下是 WPF 脚手架的一些资源。
- 代码项目网站上有一篇 WPF 脚手架文章:WPF CRUD Generator (Scaffolding)
- 还有一个可能有用的 Codeplex 项目:WPF Scaffolder
尽情享受吧!
关于c# - 如何在 Windows 窗体/WPF 中为数据库 View (带连接)创建编辑器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10581047/