【发布时间】:2012-02-04 05:26:31
【问题描述】:
我正在为我的实体框架数据库上下文类开发一个基类。在基类中我需要访问 DbContext,在派生类中我需要访问派生 DbContext。目前我有以下代码:
public abstract class BaseClass: IDisposable
{
protected abstract DbContext BaseContext { get; }
public void Dispose()
{
if (BaseContext != null)
{
BaseContext.Dispose();
}
}
}
public class DerivedClass : BaseClass
{
DerivedContext context; // public class DerivedContext: DbContext
protected override DbContext BaseContext
{
get
{
return context;
}
}
}
这是一个正确的方法吗?
【问题讨论】:
-
你为什么这样做?我认为您要实现的目标类似于castleproject.org/activerecord
标签: c# .net inheritance casting