Linq to SQL-在InsertOnSubmit()之后如何查找IDENTITY列的值
技术问答
301 人阅读
|
0 人回复
|
2023-09-14
|
我正在使用 LINQ to SQL 将简单数据插入到一个表中,而没有一个stored0 B1 L" z& H6 x
procedure。该表具有一个“主键ID”列,该IDENTITY列在SQL Server和中都设置为列DBML。
" m1 k0 Y. n5 R8 d5 u& I9 X8 G首先,我InsertOnSubmit();使用一行的数据进行调用,然后调用SubmitChanges();以将该行提交给db。但是我认为必须有一种简单的方法来检索IDENTITY新插入的行的行的列值。我不想将IDENTITY列值提供给数据库,我希望它为我生成一个。
3 l: b4 Q' x6 c4 X4 p如何最好地处理?" M/ N+ q0 p( I, S* C/ z
2 X& {7 _- j! s/ y( [+ k; v解决方案:% Q/ d) O2 z3 a( a% O& \( _/ E
8 F- ^3 T- F7 F: B9 ?
, e4 P" o& N1 l
5 L' t7 f0 m9 Q. q/ h7 c4 h# [. A
这是一个简单的代码片段# P+ i$ u& N7 r* C0 s: L. u
Dim odb As New DataClassesDataContext
* k9 l% T1 X7 ]- V Dim tst As New test9 g* `2 `( W/ ]/ R0 {6 ?
tst.name = "abcd"+ y9 {7 T0 ~. c2 I1 A) Y2 |
odb.tests.InsertOnSubmit(tst): i ?, e' b2 V0 m
odb.SubmitChanges()
6 O2 }9 v" Y" Y Response.Write("id:" + tst.id.ToString), r. ~6 ~! s% B8 |6 H2 I5 |
因此,基本上,您在InsertOnSubmit中使用的对象将在数据库中创建记录后获得填充的标识字段 |
|
|
|
|
|