首页 新闻 搜索 专区 学院

BLL.DBRolsBLL bls{get;set;} 这样子的写法是不是语法糖

0
悬赏园豆:5 [已解决问题] 解决于 2016-07-05 12:59

看到MVC如下代码

  BLL.DBRolsBLL bls{get;set;}//= new BLL.DBRolsBLL();  

看不懂,于是转到DBRolsBLL定义,定义的代码如下

public class DBRolsBLL
{
IDAL.IDBSession db;
IDAL.IDRols idb;// = DALFactory.DALFactory.GetIDRols();

public DBRolsBLL()
{
db = DALFactory.DBSessionFactory.CreateGetDBSession();
idb = db.rols;
}

 

还是不能理解这个语法糖,为什么可以这样子写,请高人指点我一下,谢谢。

zhengyingcan的主页 zhengyingcan | 初学一级 | 园豆:12
提问于:2016-05-18 20:15
< >
分享
最佳答案
0

这就是基本的属性了

收获园豆:5
刘宏玺 | 专家六级 |园豆:14006 | 2016-05-18 20:38

属性为什么不在 写类的时候 写呢, 为什么在定义的地方写呢,  定义的时候,我感觉只有2种 方式,一种 是命名,一种 是 new 一个实体出来。

zhengyingcan | 园豆:12 (初学一级) | 2016-05-18 20:40

@zhengyingcan: 类里面包含 

函数

字段

属性

刘宏玺 | 园豆:14006 (专家六级) | 2016-05-18 20:42

@刘宏玺: 感觉 BLL.DBRolsBLL bls{get;set;}  不是在写一个类呀,只是定义一下

其中DBRolsBLL 完整的类如下

public class DBRolsBLL
{
IDAL.IDBSession db;
IDAL.IDRols idb;// = DALFactory.DALFactory.GetIDRols();

public DBRolsBLL()
{
db = DALFactory.DBSessionFactory.CreateGetDBSession();
idb = db.rols;
}
//查询所有rols
public IQueryable<DBRols> DBRolsToList()
{

return idb.LocaList(x => true).AsQueryable();
}
//分页查询所有rols
public IQueryable<DBRols> DBRolsToList(int pageSize, int pageIndex, out int total)
{
return idb.LocaList(x => true, pageSize, pageIndex, out total).AsQueryable();
}
//添加rols角色
public DBRols Adds(DBRols r)
{

return idb.Add(r) ;
}
//查询指定Rols
public DBRols getDBRols(DBRols r)
{
return idb.LocaList(x => x.ID == r.ID).FirstOrDefault();
}
public DBRols getDBRols(int r)
{
return idb.LocaList(x => x.ID == r).FirstOrDefault();
}
//删除Rols
public bool deleteRols(DBRols r)
{
return idb.delete(r);
}
//更新权限
public bool updataRols(DBRols r,List<int> ids)
{
r.DBUserAction.Clear();
DBUserActionsBLL db = new DBUserActionsBLL();
r.DBUserAction = db.getDBUserActionList(x=>ids.Contains(x.ID)).ToList() ;//查询list中包含的权限id 然后赋予 d
return idb.updata(r);
}
}

zhengyingcan | 园豆:12 (初学一级) | 2016-05-18 20:44

@zhengyingcan: 你这个是DBRolsBLL类

 

 

BLL.DBRolsBLL bls{get;set;}//= new BLL.DBRolsBLL();  

这个是其他类中的属性

BLL.开头是命名空间

刘宏玺 | 园豆:14006 (专家六级) | 2016-05-18 20:47

@刘宏玺:  你的意思,BLL.DBRolsBLL bls{get;set;} 创建了一个新类,新类名是bls

那 BLL.DBRolsBLL 是多余的吗,

zhengyingcan | 园豆:12 (初学一级) | 2016-05-18 20:49

@zhengyingcan: http://www.runoob.com/csharp/csharp-property.html

刘宏玺 | 园豆:14006 (专家六级) | 2016-05-18 20:51

@刘宏玺: 难道说 BLL.DBRolsBLL bls{get;set;} 定义了DBRolsBLL类,同时为 DBRolsBLL  加了属性进去,

zhengyingcan | 园豆:12 (初学一级) | 2016-05-18 20:54

@zhengyingcan: DBRolsBLL可能是个内部类

你代码发的不全,我不懂你在说什么

刘宏玺 | 园豆:14006 (专家六级) | 2016-05-18 20:56

@刘宏玺: 我其实是看不懂  BLL.DBRolsBLL bls{get;set;}   这种 写法

如果写成  BLL.DBRolsBLL bls= new BLL.DBRolsBLL();   我就懂了,

高人你有邮箱吗,我把类发到你的邮箱里面吗,

zhengyingcan | 园豆:12 (初学一级) | 2016-05-18 20:58

@zhengyingcan: 

http://www.runoob.com/csharp/csharp-property.html

这个连接你仔细看了没有?

看后和我说说你讲的是什么知识,和你的问题是什么关系

刘宏玺 | 园豆:14006 (专家六级) | 2016-05-18 21:00

@刘宏玺: 我看了,只是都是类里面有属性,  这个我学过的。是不是你要看 

抽象属性 这一块呢

zhengyingcan | 园豆:12 (初学一级) | 2016-05-18 21:02

@zhengyingcan: 

 BLL.DBRolsBLL bls{get;set;}这个就是正宗的属性了, 那还有啥不懂的?

刘宏玺 | 园豆:14006 (专家六级) | 2016-05-18 22:04

@刘宏玺:   我记得写属性格式应该如下 ,  但写成   BLL.DBRolsBLL bls{get;set;} 我实在是不能理解

public class Product

{

private string _name; public Product()

{

_name = "白色经典长袖衬衫"; //或者 //Name = "白色经典长袖衬衫";

}

public string Name

{

get

{ return _name;

}

set

{

_name = value;

}

}

}

zhengyingcan | 园豆:12 (初学一级) | 2016-05-19 12:56

@刘宏玺: 完整的代码我截屏吧,如下

zhengyingcan | 园豆:12 (初学一级) | 2016-05-19 13:02

@zhengyingcan: IOC注入的实现吧

czd890 | 园豆:8995 (大侠五级) | 2016-05-19 14:06

@calvinK: IOC注入 有没有这方面的经典博客 ,推荐一下,谢谢

zhengyingcan | 园豆:12 (初学一级) | 2016-05-19 20:36

@zhengyingcan: 那这种写法可以认为是语法糖了

刘宏玺 | 园豆:14006 (专家六级) | 2016-05-19 23:15

@刘宏玺: ioc和语法糖有什么关系,汗......

czd890 | 园豆:8995 (大侠五级) | 2016-05-20 12:10

@zhengyingcan: 园子里面搜ioc,一大把的文章

czd890 | 园豆:8995 (大侠五级) | 2016-05-20 12:10
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册