我定义为IStore的接口,有两个方法:C# - 接口/抽象类 - 确保事件引发的方法
public interface IStore<TEntity>
{
TEntity Get(object identifier);
void Put(TEntity entity);
}
我想成为把 的成功引发的事件(参考,放可以存储一个行中的DB或文件系统等文件上...)
因此,实施Istore类型产品的一类看起来有点像这样:
class MyStore : IStore<Product>
{
public Product Get(object identifier)
{
//whatever
}
public void Put(Product entity)
{
//Store the product in db
//RAISE EVENT ON SUCCESS
}
}
我所追求的是确保IStore的每个实现都引发该事件的方法 - 应该改为抽象类,还是接口?
这是我的答案。在某种程度上,当你允许方法被覆盖时,你总是依赖于理解合同的人。但是提供这样的框架可以让你对事物允许发生的顺序有一些控制。 – unholysampler 2010-07-07 12:30:30