- //Model层可以这样写
- public class Customer
- /*
- //Before
- privet int _ID;
- public int ID
- {
- get{return _ID;}
- set{_ID=value;}
- }
- */
- public int ID { get; set; }
- public string Name { get; set; }
- public string Password { get; set; }
- public int Age { get; set; }
- }
- 引入了var:
- var i = 1;//int
- var j = 12.34;//double
- var k = "Hello World";//string
- var x;//错误声明是必须符值
- var y = null;//不能给null值
- var z = { 1, 2, 3 };//错误
- var user1 = new { ID = 1, Name = 2, Age = 22 };
- var user2 = new { ID = 1, Name = 2, Age = 23 };
- //在这里编译器会认为p1,p2相当于:
- public class SomeType
- {
- public int ID { get; set; }
- public string Name { get; set; }
- public int Age { get; set; }
- }
- //对象初始化
- Customer customer = new Customer() { ID = 11, Name = "Lan", Password = "beautiful", Age = 20};
- //List初始化
- List<Customer> cusList = new List<Customer>(){
- new Customer{ ID = 11, Name = "Lan", Password = "beautiful", Age = 20},
- new Customer{ ID = 11, Name = "Lan", Password = "beautiful", Age = 20},
- new Customer{ ID = 11, Name = "Lan", Password = "beautiful", Age = 20},
- };
- //集合初始化
- List<int> numList = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
- //扩展方法(Extension Methods)
-
/*首先声明扩展方法:通过指定关键字this修饰方法的第一个参数。注意扩展方法仅可声明在静态类中。扩展方法具备所有常规静态方法的所有能力,可以使用实例方法语法来调用。接着就可以调用扩展方法了。下面通过一个具体的实例分析一下:
例如我们要检查一个字符串变量是否是合法的电子邮件地址?在.Net2.0框架下像这样:*/var email = "yourname@163.com"; if (EmailValidator.IsValid(email)) { Response.Write("提示:这是一个正确的邮件地址"); }
/*而使用扩展方法的话,我可以添加“IsValidEmailAddress()”方法到string类本身中去,该方法返回当前字符串实例是否是个合法的字符串。*/
if (email.IsValidEmailAddress()) { Response.Write("提示:这是一个正确的邮件地址"); }
- // 我们是怎么把这个IsValidEmailAddress()方法添加到现有的string类里去的呢?先定义一个静态类,再定
- //义“IsValidEmailAddress”这个静态的法来实现的。
public static class Extensions//静态类 { public static bool IsValidEmailAddress(this string s) //静态方法和this { Regex regex = new Regex(@"^[/w-/.]+@([/w-]+/.)+[/w-]{2,4}$"); return regex.IsMatch(s); } }
-
//还有Lambda表达式 LinQ, Silverlight等等
-
-