c# - 在 LINQ2SQL 插入后获取主键

标签 c# .net linq-to-sql

如何通过 LINQ2SQL 检索新创建记录的主键?

var peon = new Peon { name = 'Serf' };
context.Peons.InsertOnSubmit(peon);
context.SubmitChanges();

LINQ2SQL 模型会自动用主键更新吗?我无法在文档中找到关于此的任何信息。

或者有其他方法可以获取最后插入记录的主键吗?最好不要搜索记录。

我的问题的上下文是我的类通过多对多表关联到另一个类。我需要主键才能将关联插入该表。例如:

// After previous code.
var bossPeonMapping = new { PeonId = peon.Id, BossId = boss.Id };
// Insert mapping

如果 LINQ2SQL 为我提供更好的方法来执行此操作,我将不胜感激。

最佳答案

提交更改后,实体应具有其主键值。

关于c# - 在 LINQ2SQL 插入后获取主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6628671/

相关文章:

c# - Visual Studio JIT 调试器加载速度极慢,需要 30 秒

.net - 将大型 VB6 应用程序升级到 .NET。对VB迁移合作伙伴的看法

.net - Linq 2 SQL 或 Linq 实体

sql-server - 使用 LINQ 时数据库性能开销有多大?

c# - 使用 linq-to-sql 插入对象列表

大型项目的 C# 编译时间(与 C++ 相比)

c# - 如何使用客户端对象模型检索呈现的 Sharepoint WebPart 数据

c# - 支持 Ajax 的 WCF 服务 - 实现观察者设计模式

C# SQlite - 使用 Query 计算字符串重复的次数(并发症)

c# - 自定义Treeview用户控件MVVM双击冒泡事件WPF