0

我将 Silverlight5 与 MVVM 框架和实体框架一起使用。在我的项目中,我有一个疑问..

我有一个名为“客户”的实体,结构如下..

Customer ocustomer = new Customer(); 
ocustomer.CustomerName = customername; 
ocustomer.CompanyName = company; 
ocustomer.AddressLine1 = address1; 
ocustomer.AddressLine2 = address2; 
ocustomer.City = city; 
ocustomer.State = state; 
ocustomer.Country = country; 
ocustomer.ZipCode = zipcode; 
ocustomer.Notes = note; 

_context.Customers.Add(ocustomer);

现在我需要将 Customer 值插入到另一个名为 Customer_Entity 的表中

     Customer_Entity ocustomerEntity=new Customer_Entity ();
     ocustomerEntity.CustomerID=Customer_ID;
     ocustomerEntity.EntityTypeID =1;
     .
     .
     .
     .
     ocustomerEntity.CreatedTime =System.DateTime.Now;
     ocustomerEntity.CreatedBy=Common.ActiveData.Instance.userid; 

在这里,我需要在每一行中将客户值插入 Customer_Entity 。 Customer_Entity 表结构如下,

EntityID| CustomerID| EntityValue|
----------------------------------                                                                                                 
1       | 22        |jasper      |                                                                                  
2       | 22        |Company:Raj |
3       | 22        |Address     |

ocustomer.CustomerName=customername
.
.
.
ocustomer.CreatedTime=system.DateTime.Now..

所以我需要使用唯一的 CustomerID 在每一行中插入所有值。需要帮助来解决这个问题。

4

1 回答 1

1

在您的CustomerEntity对象上,您应该有一个指向相应Customer记录的导航属性。同样,我希望您的Customer班级也有一个集合CustomerEntity

在这种情况下,您应该实例化Customer对象,并填充必要的信息。不过,不要将它添加到 DbSet。然后,创建您需要的所有记录,使用导航属性本身(即不是CustomerEntityID 字段)将其连接到对象,并将该记录添加到 Context 类中的相应 DbSet 中。CustomerCustomerEntity

作为最后一步,将您的Customer对象添加到相应的 DbSet,然后运行 ​​SaveChanges。你应该很高兴。实体框架应自动为您生成 ID 并将其填充到 CustomerEntity 记录。

于 2013-02-21T14:40:56.250 回答