Я застрял при попытке написать первую модель кода Entity Framework 4.1 для следующих отношений БД.
Вот визуальное изображение отношений.
dbo. [Компании] могут иметь Продавца или Дебитора в качестве Типа компаний.
dbo. [SellerDebtors] определяет связь между компанией-продавцом и компанией-должником.
Написанный мной код основан на моем исходном коде модели EF 4.0 POCO. Вот что я придумал - этот код не работает.
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; }
}
На данный момент я получаю сообщение об ошибке:
System.Data.SqlClient.SqlException: Invalid column name 'DebtorCompany_CompanyId'.
Invalid column name 'SellerCompany_CompanyId'.
Invalid column name 'Company_CompanyId'.
Invalid column name 'Company_CompanyId1'.
В идеале я хотел бы иметь возможность сохранять названия отношений.
Я предполагаю, что мне нужно установить некоторые атрибуты, но я не уверен, что установить.