猿问

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

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();


杨__羊羊
浏览 547回答 2
2回答

波斯汪

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

慕盖茨4494581

我在UserBLL中using了ZhErp.Sys.DAL,为什么无法直接在UserBLL中直接写出SqlService?当然不能,你要using ZhErp.Sys.DAL.SqlService 才可以。你这个叫SqlService的类是在ZhErp.Sys.DAL.SqlService这个命名空间下的。还有就是你的类名跟命名空间名字一样,这点很不好,建议换个名字。
随时随地看视频慕课网APP
我要回答