zoukankan      html  css  js  c++  java
  • .net4.0新增特性

    .net4.0新增特性主要有

    一、动态类型

      让动态语音运行库(Dynamic Language Runtime,DLR)在运行期间动态确定对象的类型方式。使用C#新增的动态功能,可以更好的进行交互操作,更容易的使用Dom。在4.0版本中,Microsoft包含了动态语音运行库,DLR建立在CLR基础上,提供了把所以动态语音交互操作链接起来的功能,C#使用dynamic关键字访问新的DLR。这对于编译器是一个标记,只要遇到这个标记,编译器就认为这是一个动态调用,而不是一般的静态调用。

    二、可选参数和命名参数

      可选参数允许为方法的一些参数提供默认值,并且允许使用者重载类型,因此即使只有一个方法,也能处理所有变体。如:

    1 public void CreateUser(string firstName,string lastName,bool isAdmin=false,bool isTrialUser=true)
    2 {
    3 }

    在使用者调用时就可以这样调用该方法:

    1 myClass.CreateUser("Bill","Ebjen");
    2 myClass.CreateUser("Bill","Ebjen",true);
    3 myClass.CreateUser("Bill","Ebjen",true,false);
    4 myClass.CreateUser("Bill","Ebjen"isTrailUser:false);

    命名参数会潜在的改变编写代码的方式,该功能能使代码更容易编写和阅读。例如,看一下System.IO名称空间的File.Copy()方法,一般构建为:

    File.Copy(@"C:\myTestFile.txt",@"C:\myOtherFile.txt",true);

    在这个方法中使用3个参数,但实际传递给Copy()方法的是什么内容?除非知道这个方法的前前后后,否则仅看一眼该方法,很难判读出该方法会执行何种操作。而通过命名参数就可以在提供参数值之前使用代码中的参数名,如下:

    File.Copy(sourceFileName:@"C:\myTestFile.txt",destFileName:@"C:\myOtherFile.txt",overwrite:true);

    通过命名参数,就很容易阅读和理解这行代码的操作,使用命名参数对最终编译没有影响,命名参数仅应用在应用程序的编码中。

    三、协变和抗变

      虽然在.net framework的以前版本中包含协变和抗变,但他们在.Net4.0中进行了扩展,当处理泛型、委托等时,它们会执行的更好。例如:以前版本可以对对象和数组使用抗变,但不能对泛型接口使用抗变。而在.Net4.0中就可以对泛型接口使用抗变。

    四、Asp.Net MVC

      Asp.Net MVC是Asp.Net最新的只要新增内容,他为开发团队带来了许多惊喜。Asp.Net MVC提供了许多开发人员期待的、使用模型-视图-控制器来创建Asp.Net的方式。Asp.Net MVC在开发人员构建应用程序中提供了可测试性、灵活性和可维护性。记住:Asp.Net MVC不是每个人都知道和喜欢的Asp.Net替代品,而只是构建应用程序的另一种方式。

      Asp.Net这个版本允许使用这个新模型构建应用程序,它完全内潜在Framework和Visual Studio中。



  • 相关阅读:
    选择器的区别
    固定DIV样式
    图片自适应不变形
    CSS实现图片在div a标签中水平垂直居中
    2017年校招全国统一模拟笔试 页码统计
    LeetCode 23. Merge k Sorted Lists
    LeetCode 15. 3Sum
    LeetCode 12. Integer to Roman
    LeetCode 11. Container With Most Water
    LeetCode 8. String to Integer (atoi)
  • 原文地址:https://www.cnblogs.com/PaulMa/p/2244680.html
Copyright © 2011-2022 走看看