在中信66楼微软Offic参加讲座

  这个周六去了微软Office参加讲座,说真的,没有上去中信,一开始坐错了电梯。
  会上讲了VS2008的新语言特性,还有,SQL2008,SilverLight的应用,Windows2008,还有微软的S+S理念。
  印象比较深刻的是VS2008的新语言特性。注意,这里讲的不是.net Framework3.5的新语言特性。我试总结一下:

  • 工具上的更新。
    多定向(即支持多种Framework 版本更换),丰富的HTML/CSS支持,JS支持,WPF设计器和项目支持等。
  • 扩展方法
    以前不能给类型增加方法,现在可以了。会上以整形(int)为例子。
    在一个CS文件中,新创建一个静态类,静态类里面加静态方法。
     1static class MyClass
     2{
     3   public static bool IsOne(this int i)
     4   {
     5      if( i == 1)
     6      {
     7            return true;
     8      }

     9
    10      return false;
    11   }

    12}
    可以看出第三行,语法很不一样。这样,你在CS中,就可以使用
    i.IsOne();
  • 自动属性
    不用去定义一个私有变量,直接
    public string Name { get; set; }
    这个功能,估计讲解的人自己暂时还没有搞得很清楚,所以讲得也比较模糊。这样就可以直接用这个变量了。
  • 对象初始化器,集合初始化器
    这可不是编译器直接的东西,是使用了VS2008才编译得通的。
    1Book b1 = new Book(Name="Book1", Price=13.5);
    2List<Book> bs1 = new List<Book>
    3{
    4   new Book(Name="Book1", Price=13.5),
    5   new Book(Name="Book2", Price=13.5),
    6   new Book(Name="Book3", Price=13.5),
    7   new Book(Name="Book4", Price=13.5)
    8}
    ;
    明白了吧?
  • 隐式本地变量,匿名变量
    也是非常Cool的功能。但这个功能不代表新的C#不是强类型语言。
    1var v1 = 1;    //  整数
    2var Name = "LiMing";    // 字符串
  • Lambda表达式
    大家可以参与一下《Lisp之美》这篇文章。
    1var bs2 = bs1.Where( b=>b.Price>=2);
    2foreach( Book b in bs2 )
    3{
    4    MessageBox.Show( b.Name +":" +b.Price.ToString());
    5}
  • Linq
    这是最大的变化了,估计也是最Cool的变化。Linq也算是一个ORM工具,类似的有Hibernate,Linq可以实现同样的功能。(当然,实现起来不怎么一样,功能强度更是不一样)。共有的功能有DB->OOP。
    1var bs3 = from b in bs1 where b.Price>2 select b;
    这个功能会带来一些数据版本控制问题。

  顺手提下Windows2008的IIS7,Modules功能加强了,可以把类编译后放在网站的Bin下面,然后在IIS7中配置Modules。Modules可以在请求进入后,进行一系列验证。最后才到页面去。
  当前IIS6的顺序:

  IIS7顺序:

  是不是简化了许多?
  至于IIS的配置页面,拍了照,这次就先不传上来了。下次有空再说说了。
  补充一句,好像演示者用自己的机器用的默认浏览器是Firefox。

原文地址:https://www.cnblogs.com/fyan888/p/NewMicrosoft.html