我有以下存储库类:
public class Repository<T> : IDisposable where T : new()
{
public IDbConnectionFactory DbFactory { get; set; } //Injected by IOC
IDbConnection db;
IDbConnection Db
{
get
{
return db ?? (db = DbFactory.Open());
}
}
public Repository()
{
Db.DropAndCreateTable<T>();
}
public List<T> GetByIds(long[] ids)
{
return Db.Ids<T>(ids).ToList();
}
}
然后在我的AppHost.Configure()
. 我像这样注册依赖项:
container.Register<IDbConnectionFactory>(c =>
new OrmLiteConnectionFactory(ConfigurationManager.
ConnectionStrings["AppDb"].ConnectionString, SqlServerDialect.Provider));
container.RegisterAutoWired<Repository<Todo>>().ReusedWithin(Funq.ReuseScope.None);
但是当我运行我的应用程序时,我的应用程序似乎DbFactory
是 null 并且没有被正确注入,因为我得到了一个空引用异常。