これは何度か尋ねられます。正確な問題はどこにあるのか知っていますが、避けようとしています。指定されたEF6スキーマは無効です。エラー:タイプyが利用できないため、関係xがロードされていません
簡体POCO:
public class TaskEntity
{
public int TaskId { get; set; }
public int? AssignedToId { get; set; }
public virtual UserEntity AssignedTo { get; set; }
public int CreatedById { get; set; }
public virtual UserEntity CreatedBy { get; set; }
public int? ClosedById { get; set; }
public virtual UserEntity ClosedBy { get; set; }
}
public class UserEntity
{
public List<TaskEntity> TaskId { get; set; }
public int UserId { get; set; }
public string Name { get; set; }
}
マッピング:
public class TaskMap : EntityTypeConfiguration<TaskEntity>
{
public TaskMap()
{
ToTable("tTasks");
HasKey(x => x.TaskId);
HasRequired(x => x.CreatedBy).WithMany(x => x.TaskId).HasForeignKey(x => x.CreatedById).WillCascadeOnDelete(false);
HasOptional(x => x.ClosedBy).WithMany(x => x.TaskId).HasForeignKey(x => x.ClosedById).WillCascadeOnDelete(false);
HasOptional(x => x.AssignedTo).WithMany(x => x.TaskId).HasForeignKey(x => x.AssignedToId).WillCascadeOnDelete(false);
}
}
私は3つの異なるクラスにUserEntityを分離し、それらをTaskEntityから継承させる必要があることを読んだことがあるが、これは右のように聞こえるしません。これらのすべてのケースでは、まったく同じユーザーオブジェクトになります。
私は次のようにテーブル構造を持つことを期待しています:
タスクIDを
tTasks | [FK] AssignedToId | [FK] CreatedById | [FK] ClosedById
tUsers
ユーザーID |名前
ここで間違っていることを誰かが指摘できますか。何らかの形でテーブルを作成してテーブルを作成する必要がありますか
答えてくれてありがとう、今働いているときに、私はそれを理解することができます、ありがとう! – Raimonds