私はEFの新機能です。 私はEF6 Code Firstアプローチでアプリケーションを作っています。すべてのPOCOエンティティをIDを定義する基本クラスから派生させました。 私が知らないのは、多対多の関係性を扱うエンティティのコンストラクタを宣言する方法です。たとえば :EF6コード内のPOCOエンティティのデフォルトコンストラクタ
私は、このエンティティを持っている:
public partial class ArqAppRole
{
[Key]
[Column(Order = 0)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int ApplicationId { get; set; }
[Key]
[Column(Order = 1)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int RoleId { get; set; }
public DateTime SinceDate { get; set; }
public DateTime? UntilDate { get; set; }
public bool IsActive { get; set; }
public virtual ArqApplication ArqApplication { get; set; }
public virtual ArqRole ArqRole { get; set; }
}
この私が欲しいものEFによって自動生成されたが、それはそれにIDを設定しますデフォルトコンストラクタを持つBaseEntityクラスにスーパークラスに設定することです
はpublic abstract class BaseEntity
{
private object _id;
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public object Id
{
get
{
return _id;
}
protected set
{
_id = value;
}
}
protected BaseEntity() : this(null) { }
protected BaseEntity(object id)
{
_id = id;
}
}