结构图和实体框架4.1
我的存储库类的形式如下:
public partial class CategoryRepository : EfRepository<Category>, ICategoryRepository
{
public CategoryRepository(IUnitOfWork uow)
: base(uow)
{ }
}
public partial interface ICategoryRepository : IRepository<Category>
{
}
并且我需要其中许多相同的格式。这是一项漫长而无聊的工作。 对于引导程序,我使用通用类型扫描。
ObjectFactory.Initialize(x =>
{
x.Scan(y =>
{
y.AssemblyContainingType(typeof(IRepository<>));
y.ConnectImplementationsToTypesClosing(typeof(IRepository<>)).
OnAddedPluginTypes(z => z.HybridHttpOrThreadLocalScoped());
});
工作得很好,但如果我不需要像上面那样声明所有存储库类,那就更好了。无论如何要解决这个问题?我正在使用 Structuremap 2.6.2
谢谢大家, 南沃.
I have my repository classes with the form like this:
public partial class CategoryRepository : EfRepository<Category>, ICategoryRepository
{
public CategoryRepository(IUnitOfWork uow)
: base(uow)
{ }
}
public partial interface ICategoryRepository : IRepository<Category>
{
}
and i need to have many of them, same format. it's a long boring work to do.
For bootstrapper, i use generic type scan.
ObjectFactory.Initialize(x =>
{
x.Scan(y =>
{
y.AssemblyContainingType(typeof(IRepository<>));
y.ConnectImplementationsToTypesClosing(typeof(IRepository<>)).
OnAddedPluginTypes(z => z.HybridHttpOrThreadLocalScoped());
});
Works just fine, but it'd be nicer if i dont need to declare all the repository classes like above. Anyway to get around this?? I'm using structuremap 2.6.2
THanks all,
Nam Vo.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是的,您可以为此使用泛型。声明一个默认存储库或类似的内容:
确保将
TEntity
自己限制为正确的类型。Yes you can use generics for this. Declare a defaultrepository or something like this:
Make sure you constrain
TEntity
yourself to the proper types.