最近工作压力比较大,不得已开始自学C#。同时网站开发业务开展迫在眉睫,只能先从ASP.NET学起。回想一下,连C#和ASP.NET的关系都没有明白,就被赶鸭子上架了。。。我觉得这将是我工作以来最具有戏剧性的一笔!!
话不多说,网上搜了一下洞庭夕照的“学用MVC4做网站”,感觉最后从我现在的水平看实在是惊为天人之作,于是便开始一边看一边做了起来,无奈这位兄台技术在我之上不知多高,很多东西直接省略不讲,看得我实在费力,又找不到更好的教程,只能一边看一边百度。
这一笔真的浓厚。。。
一、中括号
Model 类里[Key]这个东西,类似于JAVA里的反射,ASP.NET:类中使用中括号([...])的作用。该标记不起任何实际作用,仅是告诉vs该语句下面的方法(Method)是ObjectDataSource的默认绑定方法,标记的作用是为了让编译器更好的为 ObjectDatasource 向导找到合适的方法。但是要加上using System.ComponentModel.DataAnnotations;这条引用。
二、/// <summary>
C#中在注释函数的时候连用3个斜杠,即“///”编译器会自动生成函数相关的注释段,但是需要具体的编译器代码提示,那还需要添加相应的内容。
先写好函数或方法,然后在函数或方法的上一行输入“///”后,系统会自动出来<summayr>.....</summary>以及参数等,在补全说明即可
三、datetime? 和 datetime 有什么区别
CSharp中,有两种类型的变量。
基本类型和引用类型
基本类型变量在定义一个变量的时候,不允许将该变量设置为null。但是在有的时候,我们又希望该基本类型拥有可以为null的能力。所以我们在该基本类型后面 加? 就可以将该基本类型变成应用类型。如 int => int? long => long? 等
此时 int? 定义的变量,就是应用类型了,可以为null,而不再是一个基本的类型。所有的基本类型转换成的引用类型,都有value这个属性,该属性是该应用的值。所有 datetime = datetime?.value
四、[HttpPost]
System.Web.Mvc.dll中对它的注解是:表示一个特性,该特性用于限制操作方法,以便该方法仅处理 HTTP POST 请求。
具体来讲,就是在对于Mvc Controller中的方法,如果你希望该方法只能通过前台表单的Post方式来访问并且传输数据的话,通过添加[HttpPost]注解即可实现,这样,该方法就不会通过Get方法进行请求,限制了该操作方法的请求类型。
五、Repository模式
这个模式很深奥,在这里只能先列举一下简单的释义,随后再深入学习。
ASP.NET:EF安装 程序创建及开发模式
Repository模式