首页 新闻 搜索 专区 学院

关于命名空间的问题,谢谢

0
[已解决问题] 解决于 2012-04-11 14:37

namespace

有下面这个问题,我有2个命名空间
namespace ZhErp.Sys.BLL.UserBLL

namespace ZhErp.Sys.DAL.SqlService

我在UserBLL中using了ZhErp.Sys.DAL,为什么无法直接在UserBLL中直接写出SqlService?

private SqlService objUserDAL = new SqlService();  无法这样写

只能象下面这样写
private DAL.SqlService.SqlService ss = new ZhErp.Sys.DAL.SqlService.SqlService();

适渊的主页 适渊 | 初学一级 | 园豆:2
提问于:2012-04-06 14:40
< >
分享
最佳答案
-1

这个是你没把命名空间彻底搞明白,每个命名空间下面都有隶属于这个命名空间的程序文件,比如你所说的namespace ZhErp.Sys.BLL.UserBLL下面你应该定义了一个UserBLL这个类吧。你想在其他地方引用的话肯定要加上namespace ZhErp.Sys.BLL.UserBLL,但是如果你的命名空间是namespace ZhErp.Sys.BLL,然后下面有一个UserBLL这个类这个类的话你就可以直接引用namespace ZhErp.Sys.BLL然后调用UserBLL这个类

奖励园豆:5
小茶喏 | 菜鸟二级 |园豆:274 | 2012-04-06 15:49
其他回答(5)
0

我在UserBLL中using了ZhErp.Sys.DAL,为什么无法直接在UserBLL中直接写出SqlService?

当然不能,你要using ZhErp.Sys.DAL.SqlService 才可以。你这个叫SqlService的类是在ZhErp.Sys.DAL.SqlService这个命名空间下的。还有就是你的类名跟命名空间名字一样,这点很不好,建议换个名字。

水牛刀刀 | 园豆:6350 (大侠五级) | 2012-04-06 14:43
-2

因为你的BLL和DAL里的名字相同,所以必须加上命名空间

淘@淘 | 园豆:582 (小虾三级) | 2012-04-06 14:49
0

楼上正解啊

轻狂の书生 | 园豆:1040 (小虾三级) | 2012-04-06 15:41
0

命名空间加上类名是完整的类名

下面的那个命名空间是多了个SqlService吧?

OOLi | 园豆:163 (初学一级) | 2012-04-06 21:46
0

学习了。。。

KivenRo | 园豆:1722 (小虾三级) | 2012-04-07 07:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册