当前位置:  开发笔记 > 数据库 > 正文

使用Linq,ASP.NET MVC插入多个数据库表

如何解决《使用Linq,ASP.NETMVC插入多个数据库表》经验,为你挑选了1个好方法。

我有一个相当简单的场景,我有两个表,我想在其中添加数据.它们使用主键/外键进行管理.我想在表A中添加新数据,然后检索Id并插入表B.

我当然可以使用存储过程来完成它,但我正在尝试使用Linq来完成它.

什么是最好的方法?

我当然可以得到ID并做两个单独的插入,但这似乎不是一个非常好的做事方式.

db.Table.InsertOnSubmit(dbObject);
db.SubmitChanges();

Int32 id = dbOject.Id;

//Rest of the code

任何方式优雅地做到这一点?



1> BigJoe714..:

您是否在对象关系设计中的两个表之间定义了关系?如果是这样,你可以让linq自动分配第二个表的ID属性.

示例...
表A - 订单
OrderId
OrderDate

表B - 订单项
OrderItemId
OrderId
ItemId

代码(使用LINQ-to-SQL):

Order order = new Order();
Order.OrderDate = DateTime.Now();
dataContext.InsertOnSubmit(order);

OrderItem item1 = new OrderItem();
Item1.ItemId = 123;
//Note: We set the Order property, which is an Order object
// We do not set the OrderId property
// LINQ will know to use the Id that is assigned from the order above
Item1.Order = order;  
dataContext.InsertOnSubmit(item1);

dataContext.SubmitChanges();

推荐阅读
罗文彬2502852027
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有