在DAL层MBHelper类中定义public abstract class MBHelper<T> where T : class{...}
在DAL层UserDAL类中定义public class UserDAL:MBHelper<M_Login>{...},继承MBHelper泛型类出现错误 :(“DAL.MBHelper<Model.User.M_Login>”不包含采用“0”个参数的构造函数)。
M_Login是Model层定义的用户类
这不是泛型的问题,是构造函数的问题,你是如何定义UserDAL的构造函数的?
在DAL层新建一个User文件夹添加UserDAL类,在类中定义public class UserDAL:MBHelper<M_Login>{...}
@denyscolar: 你在定义UserDAL构造函数时要通过base()给基类构造函数传值,比如:
public class UserDAL : MBHelper<M_Login> { public UserDAL() : base(unitOfWork) { ... } }
@dudu: 谢谢
你给添加一个包含 0 个参数的构造函数。
奢侈的追问一下,怎么添加一个包含 0 个参数的构造函数呢?
@denyscolar: 你的 MBHelper<T> 是不是没有包含 0 个参数的构造函数?
@Launcher: 谢谢
给一个默认的空构造函数撒
0 个参数的构造函数:
public 构造函数类(){
base();
}
谢谢
public abstract class MBHelper<T> where T : class{ public MBHelper(){}//加这个就行了 ...... }
为什么要加上一个同名的方法
@denyscolar: 你基础知识还不行,行不要去搞泛形了,建议补一下基础先
@Yu: 谢谢你的建议,我确实要补充基础知识。