0
我的數據庫看起來像下面這樣的屬性不同的表映射:如何使用實體框架
dbo.Products表:
Id | int
Status | tinyint
dbo.ProductNames表:
ProductId | int
Name | nvarchar(4000)
而且一個簡化版本的代碼將是:
public class Product{
public int Id { get; set; }
public string Name { get; set; }
public ObjectStatus Status { get; set; }
}
public class ProductEntityConfiguration : EntityConfiguration<Product> {
public ProductEntityConfiguration() {
ToTable("Products");
HasKey(p => p.Id);
Property(p => p.Id).HasColumnName("Id");
Property(p => p.Status).HasColumnName("Status");
}
}
如何將產品名稱映射到不同的表中作爲普通屬性,以便如果有人請求它,E.F.必須通過Id將兩個表連接起來?
感謝您的回覆。我通常喜歡明確指定所有表名和列名,我將如何使用實體拆分來做到這一點? –
您可以單獨指定。只需添加像Property(p => p.Name).HasColumnName(「ProductName」);調用Map()函數之前調用構造函數。 –
但是產品ID分爲兩列,我如何在兩個表中指定列名? –