下面介紹下c#的新語法,這些新語法使程式設計更方便快捷(往往一行**能起到老語法幾行功能),同時也更健壯減少異常發生,方便閱讀。個人認為很有必要掌握下。
新建乙個product
類 和shoppingcart
public class product
public string category = "waterports";
public decimal? price
public product related
public bool instock = true;
public bool namebeginswiths => name?[0] == 's';
public static product getproduct()
; product lifejacket = new product
;kayak.related = lifejacket;
return new product ;
} }public class shoppingcart:ienumerable
public ienumeratorgetenumerator()
ienumerator ienumerable.getenumerator()
}
public homecontroller
,price,related:"));
}return view(results);
}}
decimal? price = p?.price ?? 0;
public string category = "waterports";
public bool instock = true;
$"name:,price,related:"
//物件初始化
product kayak = new product
; //陣列類初始化
string names = new string ;
//字典初始化
dictionaryproducts = new dictionary,
["lifejacket"]=new product
};
public viewresult total()
}return view($"total:");
}
public static class shoppingcartextension
return total;
}}
public static class shoppingcartextension
return total;
}}
public static class shoppingcartextension}}
}
呼叫更靈活
//根據name過濾
ienumerableproductsbyname =product.getproduct().filter(p => p?.name?[0] == 's');
//或者根據**過濾
ienumerableproductsbyprice =product.getproduct().filter(p => (p?.price ?? 0) > 30);
//初始化屬性
public bool namebeginswiths => name?[0] == 's';
//初始化函式
public viewresult productsname() => view(product.getproduct().select(p => p?.name));
public async static taskgetpagelength2()
在呼叫該方法
public async taskgetpagelength()
");}
public viewresult products()
,new ,
new ,
new ,
};//return view(products.select(p => $"name:,"));
//同上 避免更改了屬性名忘記更改 hard code`name`和`price`
return view(products.select(p => $":,:"));
}
C 語法新特性之元組例項詳解
1.元組 tuple 元組 tuple 在4.0 的時候就有了,但元組也有些缺點,如 1 tuple 會影響 的可讀性,因為它的屬性名都是 item1,item2.2 tuple 還不夠輕量級,因為它是引用型別 class 對於乙個變數要使用乙個型別,有點太沒必要了。源 如下 摘要 提供用於創造元組...
c 2 0語法新特定
再是因為需要才促使語言的公升級,而不是因為公升級促使需要 請看下面示例 public partial class sampleclass public partial class sampleclass 這裡定義了乙個類sampleclass,它包含methoda和methodb兩個方法,和我們常見...
ABAP語法新特徵
data語句 變數定義 data l str type string.現在可能是這樣的 data l str china 行內定義 select but000 partner,but000 name org1,but000 bu group,lfa1 nodel from but000 inner ...