2012-03-15 64 views
1

请问有人可以告诉我如何用EF4 VB做一个插入以及如何返回插入行的ID?EF4在VB中插入和插入行的返回ID像ExecuteScalar()那样

这就是我得到的编辑和它的工作..我已经看到了一些非常混乱的方式做选择和编辑,并发现我最舒服的保持这样写好,这样我可以回去并理解我做了什么... :)

Using db As New productionEntities 
     Dim edit = (From ordEdit In db.orders Where ordEdit.order_id = 56149 Select ordEdit).First 
     edit.ExportedToOW = 0 
     db.SaveChanges() 
    End Using 

我要插入与ExportedToOW的ORDER_ID和值的新秩序,并获得ORDER_ID后面是由数据库自动生成..

非常感谢您的帮助。

回答

1

请问以下帮助:

Using db As New productionEntities 

    Dim newOrder As New Order 
    newOrder.ExportedToOW = 123 
    db.Orders.AddObject(newOrder) 
    db.SaveChanges() 

    ' Get the newly generated Id. 
    dim newKey as Integer = newOrder.order_id 

End Using 

这工作,因为当字段设置为自动编号字段时执行的SaveChanges(),那么EF将更新利用生成值的实体。