私はこのような方法があります:派生クラスのこれらのメソッドを、ベースクラスのメソッドに置き換えることはできますか?
public void AddOrUpdate(Product product)
{
try
{
_productRepository.AddOrUpdate(product);
}
catch (Exception ex)
{
_ex.Errors.Add("", "Error when adding product");
throw _ex;
}
}
public void AddOrUpdate(Content content)
{
try
{
_contentRepository.AddOrUpdate(content);
}
catch (Exception ex)
{
_ex.Errors.Add("", "Error when adding content");
throw _ex;
}
}
プラスより渡されたクラスのみが異なる方法を。
派生クラスごとにメソッドを繰り返すのではなく、基本クラスでこれらのメソッドをコーディングできる方法はありますか?私はジェネリックスに基づいて何かを考えていましたが、実装する方法がわからず、_productRepositoryを渡す方法もわかりません。そうすることができます
private void Initialize(string dataSourceID)
{
_productRepository = StorageHelper.GetTable<Product>(dataSourceID);
_contentRepository = StorageHelper.GetTable<Content>(dataSourceID);
_ex = new ServiceException();
}
あなたはエンティティを使用していますフレームワーク? –
エンティティフレームワークを使用していない –