を働いていない私は、このEntity Frameworkのコードは、最初
class ClassA
{
public long classAID {get; set;}
public string Description {get; set;}
public IEnumerable<ClassB> ClassBs {get; set;}
}
class ClassB
{
pubic long classBID {get; set;}
public string SomeOtherDescription {get; set;}
public IEnumerable<ClassA> {get; set;}
}
class TestContext: DBContext
{
public DbSet<ClassA> ClassAs { get; set; }
public DbSet<ClassB> ClassBs { get; set; }
}
Hのようなクラスは、クラスやプロパティと同じカラム名とテーブル名でDBを持っています。 私は必要に応じてweb.config設定を行っています。私は、データを取得するために、上記の使用しようとすると、私はエラーを取得
"System.Data.Edm.EdmEntityType: : EntityType 'ClassA' has no key defined. Define the key for this EntityType."
と
"System.Data.Edm.EdmEntityType: : EntityType 'ClassB' has no key defined. Define the key for this EntityType."
I、キー属性、外部キー属性などが、何も働いていた設定など疲れた複数のアプローチ。何が欠けているのか教えてください。
私はC#4を使用して、私は次のURLで確認している:あなたは、ナビゲーションプロパティはvirtual
としてマークされて見ることができるように
public class ClassA
{
public long ClassAID {get; set;}
public string Description {get; set;}
public virtual ICollection<ClassB> ClassBs {get; set;}
}
public class ClassB
{
public long ClassBID {get; set;}
public string SomeOtherDescription {get; set;}
public virtual ICollection<ClassA> {get; set;}
}
public class TestContext: DBContext
{
public DbSet<ClassA> ClassAs { get; set; }
public DbSet<ClassB> ClassBs { get; set; }
}
:
http://www.asp.net/mvc/tutorials/mvc-music-store-part-4
dbのテーブルには主キーが正しく定義されていますか? – pRimE
はい主キーが定義されています。 classAIDとclassBIDはプライマリキーであり、tableBにはclassAIDというFKの属性があります – Amit
投稿したコードが期待どおりに機能するので、別の場所で問題が発生するはずです。 –