MVC4 アプリケーションを構築し、Entityframework を使用しています。コードファーストモデルを使用しています。
私のプロジェクトクラスは次のとおりです。
public class Project
{
[Key]
public int ProjectId { get; set; }
public ProjectContact ApprovalContact { get; set; }
public ProjectContact BillContact { get; set; }
public ProjectContact ProjectContact { get; set; }
}
私の ProjectContact クラスは次のとおりです。
public class ProjectContact
{
[Key]
public int ProjectContactId { get; set; }
public string JobTitle { get; set; }
public string Number { get; set; }
public string ProjectContactMSFNo { get; set; }
public string FullName { get; set; }
}
生成されたEntityFramework データベースで最初にコードを使用している間は
SELECT [ProjectId]
,[ApprovalContact_ProjectId]
,[BillContact_ProjectId]
,[ProjectContact_ProjectId]
FROM [Db].[dbo].[Projects]
今までは正常に動作しています
列[ApprovalContact_ProjectId]を[ApprovalContact ] に変更 し、プロジェクトをデータベースに挿入しようとすると、エラーが発生しました: 列名 'ApprovalContact_ProjectContactId' が無効です。
modelBuilderでモデル名をマップしようとすると、エラーが発生します:Models.ProjectContact は null 不可でなければなりません
[ApprovalContact_ProjectId]を[ApprovalContact ]にマップするようにDbContextに指示する方法は??