ASP.NET MVC+EF框架+EasyUI实现权力管理系列(1)-框架搭建

 
 ASP.NET MVC+EF框架+EasyUI实现权力管系列
(开篇)

  前言:这首博客开始我们尽管一样步一步的来贯彻此权力系统的初步设计-框架搭建,首先自己只要说的是咱得开发工具Visual
Studio 2012要10吗实施,其次是咱们要有SQL Server数据库,如果是Visual
Studio
2010的言语,你还要设置MVC4的付出文件,这个是为?我莫记了,谁可以回答自己转之,我一直为此2012,都是拼好的,所以未极端懂。因为当时篇博客比较简单,只是建立一个简便的架,所以我顺手进行一下MVC的知识上,后面我吧会见这么过插着介绍项目中遇到的技巧,下面开始今天的同。

  于念书MVC之前,我们来必不可少了解这些知识点(自动属性,隐式类型var,对象初始化器和聚集初始化器,匿名类,扩展方法,Lambda表达式),如果你还非知底之话语虽呼吁看自己下的简要的牵线,如果您曾经清楚吧,就可掠过这首博客,看下面我起之项目之始图像,然后下篇我们开简单的牵线。

1.自行属性

 (1)自动属性(Auto-Implemented
Properties),C#电动属性可以免原来俺们手工的来声称一个民用成员变量和和性get,set的开。

       public class Kencery  //声明一个Kencery的切近

       {

              public int ID{get;set;}  //主键ID

              public string Name{get;private set;}  //只读属性名字

              public int Age{get;set;}   //年龄

       }

2.隐式类型var

 (1)现在更为多之项目遭到公可看var,这是什么意思吧?其实这就是是C#3.0初特色提供的山民类型var,var关键字指示编译器根据初始化语句右侧的表达式推断变量的型。

       var Kencery=”大家夜间好”;   //定义变量

       var list=new List<int>();    //定义一个List集合

       var Kencery=new{ID=1,Name=”HYL”,age=24}  //对象初始化起定义的门类

       var geners = from n in StoreContract.ProductCatalogs

                         where n.IsSystem == false

                         select n;

            return View(geners);

    //Linq的行使,这个当后边我们见面大方的运,大家没有学过的得自学。

 (2) var有这么深的效益,那么他产生啊毛病也,我们这里列举大致一下

      
1)只有当与一个语中扬言与初始化局部变量时,才能够用var,不能够以该变量初始化为null,方法组或者匿名方式。

       2)不能够将var用于类范围的地段。

      
3)由var声明的变量不克就此当初始化表达式中,换句话说,此表达式是合法的:int
i=(i=20);,但是后面的是表达式会起编译错误:var i=(i=20)。

       4)不能够在同一个讲话中初始化多只隐式类型的变量。

      
5)如果限被起一个名叫也var的项目,则var关键字用分析为该项目名称,而未开吧隐式类型有变量声明的平等片去处理。

3.匿名类

 (1)将同组就读属性封装到单个对象被,而不论需首先显示定义一个品种,类型名由编译器生成,并且不克在源代码级使用,每个属性之类型由编译器推断。[var]

 (2)用来初始化属性之表达式不可知是null,匿名函数和指针类型。

       var Kencery=new{ID=1,Name=”HYL”,Age=24}

4.对象初始化器和聚合初始化器

 (1)对象初始化器是运用了编译器对目标被对外可见的字段或者性质进行按序赋值,在编译还是隐式调用了构造函数,对字段或性能之赋值可以是一个要多单。

       List<Kencery> kencery=new List<Kencery>{ 
//Kencery类
              new Kencery{ID=1,Name=”Hanyinglong”,Age=19},

       New Kencery{ID=2,Name=”HYL”},

       null

};

Person p=new Person{ ID=1,Name=”HYL”,Age=19 };

5.扩大方法

 (1)扩展方法是一致种新鲜的静态方法,它定义在一个静态类吃,但可以在其他类的目标及望调用实例方法那样进行调用。因此,通过扩张方法,我们尽管足以在非改动一个类别的前提下本着一个类型进行功能上的壮大,这种方式并无会见来新的品类,而是使用向已经产生相近中投入新章程的方来好功能的恢弘。

 (2)在对就发生类似进行扩展时,我们要用富有的扩张方法还写在一个静态类中,这个静态类就一定给存放扩展方法的器皿,所有的壮大方法都得描绘在当下个中。扩展方法及常见方法的声明方式各异,扩展方法的首先单参数为this关键字开头,后面与吃扩张的品种,然后才是真的的参数列表。

       public static 返回类型 扩展方法名(this 要推而广之的种
参数名称[,扩展方法参数列表])

       {

             

       }

       public static int ToInt32(this string s)
//扩展方法以字符串转换为整形

       {

              return Int32.Parse(s);

       }

6.Lambda表达式

 (1)
”Lambda表达式”是一个匿名函数,他好蕴涵表达式和言辞,可用来创造委托。

 (2) 运算符 =>,该运算符读作:”goes to”。

 (3) 格式:(input parameters)=>expression

       delegate bool DelDemo(int a,int b);  //定义委托

       DelDemo Lambda=(int a,int b)=>a>b 
//使用Lambda表达式表示a是否超b

       Console.WriteLine(Lambda(1,4));

7.档完全框架流程图

 (1)上面扯了这么多,其实跟我们今天底博客没什么用,只是有准备工作,也是复习一下这些知识点,下面我们用新建一个MVC4的主次,如何新建一个MVC4的次序,相信大家都早已会了,然后搭建框架,搭建之框架如图所示:

          图片 1

 (2)
然后我们更LYZJ.UserLimitMVC.Model层设计数据库,在内部建立一个空的Edmx模型,如图所示:

     图片 2

     图片 3

(3)
上面我们成立了季只类库和一个MVC4.0的门类,大家精心看一下,如果大家对及时四单类库的作用不绝明显的话,我建议大家可错过看看三重合的架,或者在下面让自己留言,现在即令非为出写了。

(4)
这首博客及此虽了了,下篇博客我们开始讲述:使用对接口编程变成针对数据库访问层进行介绍。

 

源码下载

 

   (1):整体源码下载  

  Kencery回到本系列开篇

相关文章