Entity Framework 5 の使用について少し混乱しています。エンティティ用に 2 つのインターフェイスを作成しました。
次に、次のようなクラスを作成しました。
語:
public class Word : IWord
{
[Key]
[Required]
public int WordId { get; set; }
[Required]
public string Tag { get; set; }
[Required]
public string Translation { get; set; }
[Required]
public char Language { get; set; }
public string Abbreviation { get; set; }
//Foreign Key
public int VocabularyId { get; set; }
//Navigation
public virtual IVocabulary Vocabulary { get; set; }
}
単語:
public class Vocabulary : IVocabulary
{
[Key]
[Required]
public int VocabularyId { get; set; }
[Required]
public string Name { get; set; }
public virtual List<IWord> Words { get; set; }
}
そして最後に、私の中で私DataContext
は書いた:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Word>()
.HasRequired(w => w.Vocabulary)
.WithMany(v => v.Words)
.HasForeignKey(w => w.VocabularyId)
.WillCascadeOnDelete(false);
base.OnModelCreating(modelBuilder);
}
そして、私はこのエラーが発生しています:
タイプ 'System.Collections.Generic.List' を 'System.Collections.Generic.ICollection' に暗黙的に変換することはできません。明示的な変換が存在します (キャストがありませんか?)
インターフェイスを削除しようとしましたが、すべて問題ありません..
何か役に立ちますか?
ありがとう