2009-04-30 3 views
17

Я использую LINQ to SQL для вставки простых данных в таблицу БЕЗ stored procedure. В таблице есть столбец идентификатора основного ключа, который устанавливается как столбец IDENTIITY как в SQL Server, так и в моем DBML.Linq to SQL - Как найти значение столбца IDENTITY после InsertOnSubmit()

Сначала я вызываю InsertOnSubmit(); с данными для одной строки, а затем я вызываю SubmitChanges();, чтобы передать строку в db. Но я думаю, что должен быть простой способ получить значение столбца IDENTITY строки только что вставленной строки. Я не хочу предоставлять значение столбца IDENTITY в db, я хочу, чтобы он сгенерировал его для меня.

Как это лучше всего обрабатывается?

ответ

27

вот простой фрагмент кода

  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) 

так, в основном объект, который вы использовали в InsertOnSubmit получите поле идентификатора населенное после того, как запись была создана в базе данных

+1

Отлично, спасибо! –

+0

рад, я мог бы помочь – Vikram

+0

Sooper, спасибо Vikram :) – TechieBrij

Смежные вопросы