我有一个 LINQ To Sql 数据上下文,映射到表用户和组。一个用户属于一个组。
因此,我想通过针对特定实体的数据上下文为插入/更新生成相应的 SQL。
例如
using (var context = new TestBedDataContext())
{
using (var trans = new TransactionScope())
{
context.Users.InsertOnSubmit(new User
{
Name = "Test",
Password = "Password",
Username = "test",
Group1 = new Group
{
Name = "Group1"
}
});
// Get the query for User entity
}
}
在这里,我想获取为插入新用户和 Group 实体而生成的查询。
我知道context.Log
属性可用于捕获生成的整个 SQL,这种方法的问题是,它会捕获所有不符合我兴趣的 SQL(例如更改某些其他实体的脚本)