1
私はこの問題を持っている:エンティティフレームワークの問題
は、1対1の関係を持つ2つのentytiesを持って、それらのブーツは、同じID列名を持つ
Document_head sales_Order +-----------------+ +------------------+ + DocumentId + + DocumentId + + Person + 1-----1 + OrderDate + + Status + + Purchaser + + ... + + ... + + ----------------+ +------------------+
をここでエンティティ定義は
public partial class Document_head
{
public Document_head()
{
// Other
}
[Key]
public string DocumentId {get;set;}
public int PersonId {get;set;}
public int status {get;set;}
[ForeignKey("DocumentId")]
public virtual sales_Order sales_Order { get; set; }
}
public partial class sales_order
{
public sales_order()
{
//Other
}
[Key]
public string DocumentId { get; set; }
public virtual Document_head Document_head { get; set; }
}
です
ここに文脈はあります
public class MyContext : DbContext
{
public DbSet Document_head Document_head{ get; set; }
public DbSet<sales_order> sales_order{ get; set; }
modelBuilder.Entity<Document_head>()
.HasOptional(p => p.sales_order).WithRequired();
modelBuilder.Entity<sales_order>()
.HasRequired(p => p.Document_head).WithOptional();
}
問題は、MVC3アプリケーションを実行するときです。それは言う
:
列名 "Document_Head_DocumentIdは、" 有効ではありません。
私はこの状況で多くの時間を費やしています。もし誰かがこれを手伝ってくれれば非常に感謝します。
+1データアノテーションよりも流暢なAPIを使用することを強くお勧めします。 – Oybek
あなたの素早い答えのための非常にtks .....私は変更を行いました..しかし、問題が続く...なぜ:public DbSet sales_order {get;セット; }代わりにpublic DbSet <sales_order> sales_order {get;セット; } –
@JuanPabloGomezコメントに何を付けているのかはっきりしません。あなたの質問を更新できますか? – Eranga