監査フィールドに入力する一般的な方法
エンティティが追加または変更されたときに、各エンティティの監査フィールドに入力したいと考えています。
たとえば、CustomerエンティティにはCreatedDate、がありUpdatedDateます。CreatedDate、を持つ Order エンティティについても同じですUpdatedDate。
AddCustomerまたはUpdateCustomerメソッドまたはNewOrder、メソッドでそれらを更新できUpdateOrderます。
の場合AddCustomer:
customer.CreatedDate = DateTime.Now;
customer.UpdatedDate= DateTime.Now;
の場合UpdateCustomer:
customer.UpdatedDate= DateTime.Now
すべてのメソッドでコードを繰り返す代わりにやりたいことは、ジェネリック型と更新を受け入れるジェネリック メソッドを使用できますか?
private void FillAuditFields<T>(ref T entity)
{
}
の中で何をすればいいですFillAuditFieldsか (できれば) entity.CreatedBy, entity.UpdatedBy. または、これを行うより良い方法はありますか?
ご協力いただきありがとうございます