私はMSのMVC4を初めて使用し、CRUDフロントエンドを構築する必要のあるデータベースを提供されました。すべてのテーブルには、[TableID、TableName、EffectiveDate]の形式の複合主キーがあります。データベースの設計を変更できません。データベースファーストの手法とC#ツール用のEF 5.x DbContextジェネレーターを使用してモデルを作成しましたが、生成されたモデルファイルには複合キーの注釈が含まれていません。これは、主キー= [DeptID、DeptName、EffDate]のDepartmentテーブルの例です。
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated from a template.
//
// Manual changes to this file may cause unexpected behavior in your application.
// Manual changes to this file will be overwritten if the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace BillableUnits4.Models
{
using System;
using System.Collections.Generic;
public partial class Department
{
public int DeptID { get; set; }
public string DeptName { get; set; }
public System.DateTime EffDate { get; set; }
public string Status { get; set; }
public string Fund { get; set; }
public string DeptNo { get; set; }
public string RevenueAccount { get; set; }
public string BalanceSheetAccount { get; set; }
}
}
キーは次のようになっているはずです。
[key]
public int DeptID { get; set; }
[key]
public string DeptName { get; set; }
[key]
public System.DateTime EffDate { get; set; }
主キーコンポーネントに注釈を付ける必要もありますか?もしそうなら、生成されたモデルファイルに注釈を追加する必要がありますか?(ファイルを再生成すると、明らかに私が手作業で行った変更はすべて消去されます)。適切な注釈付きのファイルを生成するようにMVC4/Visual Studioに指示する方法はありますか?