GenerateOperations
新しいプロジェクトでは、、、GeneratePocos
およびGenerateCommon
all=trueのPetaPocoT4テンプレートの使用を開始しました。
ただし、生成されたpocoオブジェクトをカスタマイズしたいと思います。生成されたクラスを変更すると、スキーマを変更するたびに消去されます。生成されたpocoオブジェクトを拡張するための最良の方法は何ですか?
Schotimeが言ったように、解決策は部分的なクラスを使用しているかもしれないと思いますが、それを機能させるのに苦労しています。これが私のコード構造です。
Database.csファイル内(T4テンプレートによって自動生成)
namespace PetaPocoNISEntities
{
public partial class PetaPocoNISEntities : Database
{
[TableName("GivenQuestion")]
[PrimaryKey("Id")]
[ExplicitColumns]
public partial class GivenQuestion : PetaPocoNISEntities.Record<GivenQuestion>
{
[Column]
public int Id
{
....
}
}
}
}
そこで、次の部分クラスを作成しました。
namespace PetaPocoNISEntities
{
public partial class PetaPocoNISEntities : Database
{
public partial class GivenQuestion : PetaPocoNISEntities.Record<GivenQuestion>
[ResultColumn]
public QuestionRepository QuestionRepository { get; set; }
[ResultColumn]
public List<GivenAnswer> GivenAnswers { get; set; }
}
}
ご覧のとおり、同じ名前空間を使用しました。
しかし、クラスを使おうとすると、次のコードは、gq(GivenQuestion)にQuestinoRepositoryメソッドが含まれていないと文句を言います。
var givenAnswers = results.Where(gq => gq.QuestionRepository .QuestionCode.Trim().ToUpper() == _formData.Trim().ToUpper());
何か案は?