特定のコード優先関係を正しく機能させるのに苦労しています。基本的に私は次のクラスを持っています:
public class Service
{
public Guid ServiceId { get; set; }
public virtual List<ServicePackageService> ServicePackageServices { get; set; }
}
public class ServicePackageService
{
public Guid ServicePackageServiceId { get; set; }
public Guid ServiceId { get; set; }
public virtual Service Service { get; set; }
public Guid PackageServiceId { get; set; }
public virtual Service PackageService { get; set; }
}
ここでの考え方は、Service オブジェクトが複数の ServicePackageService オブジェクトを持つことができるということです。これらの PackageServiceObjects は単一のサービスに関連付けられていますが、Service テーブルとの別の関係である PackageService プロパティを持っています。
私の構成では、次のものを使用しています。
public ServicePackageServiceConfiguration()
{
HasRequired(x => x.Service);
HasRequired(x => x.PackageService).WithMany().HasForeignKey(a => a.PackageServiceId).WillCascadeOnDelete(false);
}
しかし、結果として得られるデータテーブルは次のとおりです。
ServicePackageServiceId (PK)
ServiceId (No foreign key appears on this column)
PackageServiceId (FK)
Service_ServiceId (FK)
この関係を構成する方法について、誰かが私を正しい方向に向けることができますか?