MVC系列學習 一 新語法

2022-05-10 20:17:59 字數 1963 閱讀 7116

本篇內容:

1.自動屬性

2.隱式型別

3.物件初始化器和集合初始化器

4.匿名型別

5.擴充套件方法

6.lambda表示式

1.自動屬性

使用:

class

student

public

int age

}

編譯後,檢視il語言

clr 為我們生成了,私有字段(.field)和對應的共有屬性語法(get_name(),set_name(string))

本質:微軟為我們提供了「語法糖」,幫助程式設計師減少**

2.隱式型別

使用:

static

void main(string

args)

編譯後,檢視源**

在編譯的時候,根據「=」右邊的型別,推斷出var的型別,所以在初始化時,var型別就已經確定了

3.物件初始化器和集合初始化器

static

void main(string

args)

,

new student() ,

new student()

};dictionary

dicstu = new dictionary(),};

}

編譯後,檢視原始碼

本質:編譯器為我們例項化了集合,並建立了集合元素物件,再設定給集合

4.匿名型別

a.匿名類

定義:

static

void main(string

args)

;}

編譯後,檢視il**

發現編譯器,為我們生成了乙個類。這個類有乙個 無返回值,帶有對應引數的建構函式

b.匿名方法:

定義:

static

void main(string

args)

; dghi();

console.readkey();

}

編譯後,檢視il語言

在看看這個方法

得出結論:編譯器會為每乙個匿名方法,建立乙個私有的 靜態的 方法,再傳給委託物件使用

5.擴充套件方法

定義:靜態類,靜態方法,this關鍵字

static

class

stuextention

}

使用

static

void main(string

args)

; stu.sayhi();

console.readkey();

}

6.lambda表示式

使用:

static

void main(string

args)

;

//lambda語句

action dghi2 = () => ;

//lambda表示式

action dghi3 = () => console.writeline("

我是lambda表示式");

dghi();

dghi2();

dghi3();

console.readkey();

}

MVC系列學習 七 模板頁

1.新建乙個mvc專案,選擇基本 2.檢視檔案 看到vs為我們生成了一些東西 布局頁面,layout 指定了模板頁 3.開始例項 首先控制器中的 如下 檢視中 如下 1.在 views viewstart.cshtml 如果 views下有中有該 子檢視,執行時都先載入它,且它的優先順序高與其他檢視...

MVC系列學習 十五 驗證碼

1.方式一 public class vcode return null random random new random 生成隨機數 string getrandomstr for int i 0 i 4 i return str 畫線段 void drawpoint graphics g poi...

Grpc系列學習 一

以下內容出自我的個人部落格 個人部落格 grpc系列學習 一 剛開始學習go的時候就想認識go有沒有類似與springcloud的分布式框架,也是那個時候得知了grpc.說來慚愧,對grpc的認識也僅僅停留在 我知道有這麼個東西,但是我不會用.因為準備寫一系列部落格,來開始重新拾起這個分布式框架.h...