これは、@ dimonser回答に対する一種の拡張です。dbモデルを再生成する場合、それらのクラスにインターフェースを手動で再追加する必要があります。
お腹が空いている場合は、.tt
テンプレートを変更することもできます。
これは、いくつかのクラスでインターフェースを自動生成する例です。これは、あなたのメソッドを次のように.tt
置き換えるだけのフラグメントEntityClassOpening
です(明らかvar stringsToMatch
にエンティティ名とインターフェースを持ちます)。
public string EntityClassOpening(EntityType entity)
{
var stringsToMatch = new Dictionary<string,string> { { "Answer", "IJourneyAnswer" }, { "Fee", "ILegalFee" } };
return string.Format(
CultureInfo.InvariantCulture,
"{0} {1}partial class {2}{3}{4}",
Accessibility.ForType(entity),
_code.SpaceAfter(_code.AbstractOption(entity)),
_code.Escape(entity),
_code.StringBefore(" : ", _typeMapper.GetTypeName(entity.BaseType)),
stringsToMatch.Any(o => _code.Escape(entity).Contains(o.Key)) ? " : " + stringsToMatch.Single(o => _code.Escape(entity).Contains(o.Key)).Value : string.Empty);
}
しかし、普通の人が自分でこれを行うべきではありません。これを行うために地獄に行くことが聖書で証明されています。