【发布时间】:2014-07-11 12:55:10
【问题描述】:
如何根据实体框架mirations中的另一个字段值更改字段的值?
我有一个名为 Tbl_Accounts 的表,其中包含以下列:
- ID(整数)
- 代码 (nvarchar(50))
- 名称 (nvarchar(50))
- ParentID (int : nullable) ----->这是Account类型的父ID(树形架构)
在我的程序的旧版本中,“代码”列有一个 3 位长度的数字值,
例如,我在下面列出了一些存储在 Tbl_Account 中的数据:
- 1,'100','Parent1',null
- 2,'200','Parent2',null
- 3,'300','Parent3',null
- 4,'001','First Child OF Parent1',1
- 5,'002','Second Child OF Parent1',1
- 6,'001','First Child OF First Child Of Parent1',4
- 7,'001','First Child OF Seccond Child Of Parent1',5
现在:我想根据迁移的父级更改如下代码的值:
- 1, '100' ,'Parent1',null
- 2, '200' ,'Parent2',null
- 3, '300' ,'Parent3',null
- 4, '100001' ,'First Child OF Parent1',1
- 5,'100002' ,'Parent1 的第二个孩子',1
- 6,'100001001','First Child OF First Child Of Parent1',4
- 7,'100002001','Parent1 的第二个孩子的第一个孩子',5
注意:ID=7的Record的代码值:
- 100002 :ID=5记录中code列的值
- 001 :ID=7记录中code列的实际值
ID=5 记录的代码值:
- 100 :ID=1的记录中code列的值
- 002 :ID=5记录中code列的实际值
【问题讨论】:
-
您想在迁移中执行此操作吗?所以你可以完美地使用原始sql,对吧?
-
迁移是关于根据您的实体而不是表中的条目来更改数据库的架构。
-
所以请告诉我最好的方法是什么???,我希望任何用户第一次运行我的程序的新版本,程序会自动更新值
标签: c# entity-framework