首页 新闻 赞助 找找看

泛型类的继承

0
悬赏园豆:20 [已解决问题] 解决于 2013-09-03 11:58

在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层定义的用户类

denyscolar的主页 denyscolar | 初学一级 | 园豆:6
提问于:2013-09-02 11:29
< >
分享
最佳答案
0

这不是泛型的问题,是构造函数的问题,你是如何定义UserDAL的构造函数的?

收获园豆:20
dudu | 高人七级 |园豆:31075 | 2013-09-02 11:44

在DAL层新建一个User文件夹添加UserDAL类,在类中定义public class UserDAL:MBHelper<M_Login>{...}

denyscolar | 园豆:6 (初学一级) | 2013-09-02 11:46

@denyscolar: 你在定义UserDAL构造函数时要通过base()给基类构造函数传值,比如:

public class UserDAL : MBHelper<M_Login>    
{
    public UserDAL() : base(unitOfWork)
    {
        ...
    }
}
dudu | 园豆:31075 (高人七级) | 2013-09-02 14:28

@dudu: 谢谢

denyscolar | 园豆:6 (初学一级) | 2013-09-03 11:57
其他回答(3)
0

你给添加一个包含 0 个参数的构造函数。

Launcher | 园豆:45045 (高人七级) | 2013-09-02 11:45

奢侈的追问一下,怎么添加一个包含 0 个参数的构造函数呢?

支持(0) 反对(0) denyscolar | 园豆:6 (初学一级) | 2013-09-02 11:54

@denyscolar: 你的 MBHelper<T> 是不是没有包含 0 个参数的构造函数?

支持(0) 反对(0) Launcher | 园豆:45045 (高人七级) | 2013-09-02 13:17

@Launcher: 谢谢

支持(0) 反对(0) denyscolar | 园豆:6 (初学一级) | 2013-09-03 11:57
0

给一个默认的空构造函数撒

 

 0 个参数的构造函数:

public 构造函数类(){

  base();

}

Beyond-bit | 园豆:2885 (老鸟四级) | 2013-09-02 12:01

谢谢

支持(0) 反对(0) denyscolar | 园豆:6 (初学一级) | 2013-09-03 11:56
0
public abstract class MBHelper<T> where T : class{

     public MBHelper(){}//加这个就行了  

     ......
}
Yu | 园豆:12980 (专家六级) | 2013-09-02 12:39

为什么要加上一个同名的方法

支持(0) 反对(0) denyscolar | 园豆:6 (初学一级) | 2013-09-02 13:40

@denyscolar: 你基础知识还不行,行不要去搞泛形了,建议补一下基础先

支持(0) 反对(0) Yu | 园豆:12980 (专家六级) | 2013-09-02 14:00

@Yu: 谢谢你的建议,我确实要补充基础知识。

支持(0) 反对(0) denyscolar | 园豆:6 (初学一级) | 2013-09-02 15:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册