从 DB2 模式自动生成 DataTable
Posted
技术标签:
【中文标题】从 DB2 模式自动生成 DataTable【英文标题】:Auto-generate DataTable from DB2 schema 【发布时间】:2012-09-19 21:51:23 【问题描述】:我正在做一个项目,我们有一个预先存在的DataSet
。我们不做任何持久性类型的东西。它只是充当我们从 DB2 读取的数据的持有者。
我需要在其中一个表中添加一个新列。我可以打开设计器并查看DataTable
...当然可以手动添加列,但我想知道是否有办法告诉Visual Studio 从DB2 获取表模式并为DataTable
构建我?如果这也能在未来通过模式更改轻松更新它,那将是非常酷的。我希望我的DataTable
/DataSet
是强类型的,这是现在在设计器中手动添加列的东西。
我没有太多运气找到任何教程。 intermediate solution 可能是从 DB2 模式生成 XSD
并将其导入,但考虑到我在这方面缺乏知识,我认为从其他人那里获得一些输入会很好。
【问题讨论】:
你可能想看看实体框架msdn.microsoft.com/en-us/library/aa697427(v=VS.80).aspx 【参考方案1】:有很多方法可以做到这一点.. 搜索 POCO(普通旧 CLR 对象)应该会给您返回许多满意的结果。 (注意,这是 POJO 一词的“笑话”)。
当然这是 ***.com,所以您可以使用他们写的...它位于:
http://code.google.com/p/dapper-dot-net/
我不推荐 EF,它对于快速简单的解决方案来说有点沉重。
祝你好运。
【讨论】:
这是一个很好的项目。同意 EF 部分的矫枉过正......因为我无法真正修改我正在从事的项目,所以我仍在寻找一种涉及自动更新(或生成)DataTable 的解决方案。感谢您的回答!我可能会尝试下一个项目。 不确定我是否理解您的问题——如果您只想要一个 DataTable 而不是数据,为什么不使用 .NET 驱动程序并正常选择? 是的,我可能在这里遗漏了一些非常明显的东西。但澄清一下,我并不担心填写DataTable
,我正在尝试找到一种更好的方法来更新我们的DataTable
,而不是在设计器中手动编辑它......并希望同样的方法一开始就可以用来创建它。
这是我不明白的。 DataTable 是运行时对象……到底更新了什么?没有数据库就没有源代码。我很困惑你的意思。也许如果您在问题区域发布了一些代码,我可以提供帮助。 (需要明确的是,我有几个项目,其中给定的 DataTable 会在不同的用户或不同的时间改变模式......所以我理解你为什么想要改变,而不是为什么它是一个问题。也许它只是您使用 DataTable 的方式?)
我想你说的是在运行时在代码中创建一个DataTable
是吗?我说的是这个截图中看到的设计器视图:c-sharpcorner.com/UploadFile/0146e3/…以上是关于从 DB2 模式自动生成 DataTable的主要内容,如果未能解决你的问题,请参考以下文章
将 Backand 字段类型从字符串更改为浮点数,生成有效模型会在新模式中产生错误