1

我有一个 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(例如更改某些其他实体的脚本)

4

1 回答 1

0
 public void addPatientInformation() {
    using(DbClassesDataContext myDb = new DbClassesDataContext()) {
        myDb.PatientInfos.InsertOnSubmit(new PatientInfo {
            Phy_ID = physcianID,
            Pat_First_Name = txtFirstName.Text,
            Pat_Middle_Init = txtMiddleName.Text,
            Pat_Last_Name = txtLastName.Text,
            Pat_Gender = cmbGender.Text,
            Pat_Marital_Status = cmbMaritalStatus.Text,
            Pat_Date_Of_Birth = dtpDOB.Value,
            Pat_Home_Add = txtHomeAdd.Text,
            Pat_Home_Num = txtPhone.Text,
            Pat_Work_Add = txtWorkAdd.Text,
            Pat_Work_Num = txtWorkPhone.Text,
            Pat_Prim_Physician = txtPrimPhysician.Text,
            Pat_Ref_Physician = txtRefePhysician.Text,
        });
        myDb.SubmitChanges();
    }
}
于 2013-05-14T05:18:23.560 回答