2009-04-30 20 views
17

Tôi đang sử dụng LINQ to SQL để chèn dữ liệu đơn giản vào bảng KHÔNG CÓ stored procedure. Bảng có cột ID khóa chính, được đặt làm cột IDENTIITY trong cả hai SQL Server và trong số DBML của tôi.LINQ to SQL - Cách tìm giá trị của cột IDENTITY sau khi InsertOnSubmit()

Trước tiên, tôi gọi InsertOnSubmit(); với dữ liệu cho một hàng và sau đó tôi gọi SubmitChanges(); để chuyển hàng vào db. Nhưng tôi nghĩ rằng phải có một cách đơn giản để sau đó lấy giá trị cột IDENTITY của hàng của hàng mới được chèn vào. Tôi không muốn cung cấp giá trị cột IDENTITY cho db, tôi muốn nó tạo một giá trị cho tôi.

Cách xử lý này được xử lý tốt nhất?

Trả lời

27

đây là một mã đơn giản đoạn mã

  Dim odb As New DataClassesDataContext 
      Dim tst As New test 
      tst.name = "abcd" 
      odb.tests.InsertOnSubmit(tst) 
      odb.SubmitChanges() 
      Response.Write("id:" + tst.id.ToString) 

như vậy, về cơ bản các đối tượng bạn sử dụng trong InsertOnSubmit sẽ nhận được lĩnh vực nhận dạng dân cư sau khi hồ sơ đã được tạo ra trong cơ sở dữ liệu

+1

Tuyệt vời, cảm ơn! –

+0

vui, tôi có thể giúp – Vikram

+0

Sooper, Cảm ơn Vikram :) – TechieBrij

Các vấn đề liên quan