Estoy atascado al intentar escribir el primer modelo de Entity Framework 4.1 code para la siguiente relación de base de datos.Múltiples claves externas que apuntan a la misma tabla en el código de Entity Framework 4.1 primero
Aquí hay una representación visual de la relación.
dbo. [Empresas] puede tener vendedor o deudor como tipos de empresa.
dbo. [SellerDebtors] define la conexión que una compañía vendedora tiene con una empresa deudora.
El código que he escrito se basa en mi código de modelo de POCO EF 4.0 original. Esto es lo que se me ocurrió: este código no funciona.
public class SellerDebtor
{
public int SellerDebtorId { get; set; }
public int DebtorCompanyId { get; set; }
public int SellerCompanyId { get; set; }
public Company DebtorCompany { get; set; }
public Company SellerCompany { get; set; }
public ICollection<SellerDebtorInfo> SellerDebtorInfos { get; set; }
public ICollection<SellerDebtorFile> SellerDebtorFiles { get; set; }
}
public class Company
{
public int CompanyId { get; set; }
public string CompanyType { get; set; }
public string Name { get; set; }
public virtual ICollection<User> Users { get; set; }
public virtual ICollection<CompanyInfo> CompanyInfos { get; set; }
public virtual ICollection<CompanyFile> CompanyFiles { get; set; }
public virtual ICollection<SellerDebtor> SellerDebtorDebtorCompanies { get; set; }
public virtual ICollection<SellerDebtor> SellerDebtorSellerCompanies { get; set; }
}
Por el momento, me estoy haciendo esto como un error:
System.Data.SqlClient.SqlException: Invalid column name 'DebtorCompany_CompanyId'.
Invalid column name 'SellerCompany_CompanyId'.
Invalid column name 'Company_CompanyId'.
Invalid column name 'Company_CompanyId1'.
Idealmente, me gustaría ser capaz de mantener la denominación de las relaciones.
Supongo que tengo que establecer algunos atributos, pero no estoy seguro de qué configurar.
Posible duplicado de [Entity Framework CODIGO - dos claves externas de la misma mesa] (http://stackoverflow.com/questions/5559043/entity-framework-code-first-two- foreign-keys-from-same-table) –