LINQ to SQL学习的几个问题
生活随笔
收集整理的這篇文章主要介紹了
LINQ to SQL学习的几个问题
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
問題一:
什么情況下我們使用自動屬性功能,生成自動屬性時內(nèi)部沒有明確的私有變量那么我們?nèi)绾卧L問這個私有變量呢?
如果不能那我們的封裝還有什么存在的意義?
??1?/**////?<summary>
??2????///?net?2.0中使用的方法來定義Email類
??3????///?</summary>
??4????public?class?Email20
??5????{
??6????????
??7????????private?string?_EmailAddress;
??8????????public?string??EmailAddress
??9????????{
?10????????????set?{_EmailAddress=value?;}
?11????????????get?{return?_EmailAddress;}
?12????????}
?13????????public?static?bool?IsValid(Email20?_Email)
?14????????{
?15????????????Regex?regex?=?new?Regex(@"^[\w-\.]+@(\w+\.)+[\w-]{2,4}$");
?16????????????return?regex.IsMatch(_Email._EmailAddress);
?17????????}
?18????}
?19
?20
?21????//set方法的中間代碼
?22
?23????//????.method?public?hidebysig?specialname?instance?void?
?24????//????????set_EmailAddress(string?'value')?cil?managed
?25????//{
?26????//??//?代碼大小???????9?(0x9)
?27????//??.maxstack??8
?28????//??IL_0000:??nop
?29????//??IL_0001:??ldarg.0
?30????//??IL_0002:??ldarg.1
?31????//??IL_0003:??stfld??????string?linq1.Email20::_EmailAddress
?32????//??IL_0008:??ret
?33????//}?//?end?of?method?Email20::set_EmailAddress
?34
?35????//Get方法的中間代碼
?36
?37????//.method?public?hidebysig?specialname?instance?string?
?38????//????????get_EmailAddress()?cil?managed
?39????//{
?40????//??//?代碼大小???????12?(0xc)
?41????//??.maxstack??1
?42????//??.locals?init?([0]?string?CS$1$0000)
?43????//??IL_0000:??nop
?44????//??IL_0001:??ldarg.0
?45????//??IL_0002:??ldfld??????string?linq1.Email20::_EmailAddress
?46????//??IL_0007:??stloc.0
?47????//??IL_0008:??br.s???????IL_000a
?48????//??IL_000a:??ldloc.0
?49????//??IL_000b:??ret
?50????//}?//?end?of?method?Email20::get_EmailAddress
?51
?52
?53
?54
?55
?56
?57
?58????/**////?<summary>
?59????///?net?3.5?中使用方法來定義Email類
?60????///?</summary>
?61????public?class?Email35
?62????{
?63????????/**////?<summary>
?64????????///?net?3.5的屬性的簡略寫法(稱其為自動屬性?Auto?Implemented?Properties)
?65????????///?</summary>
?66
?67????????public?string?EmailAddress?{?set;?get;?}
?68
?69????????//使用擴(kuò)展方法后這些函數(shù)就沒必要擱在這里了?見Extensions
?70????????//public?static?bool?IsValid()
?71????????//{
?72?
?73????????//}
?74????}
?75
?76????//get自動屬性生成的中間代碼
?77
?78????//.method?public?hidebysig?specialname?instance?string?
?79????//????????get_EmailAddress()?cil?managed
?80????//{
?81????//??.custom?instance?void?[mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor()?=?(?01?00?00?00?)?
?82????//??//?代碼大小???????11?(0xb)
?83????//??.maxstack??1
?84????//??.locals?init?(string?V_0)
?85????//??IL_0000:??ldarg.0
?86????//??IL_0001:??ldfld??????string?linq1.Email35::'<EmailAddress>k__BackingField'
?87????//??IL_0006:??stloc.0
?88????//??IL_0007:??br.s???????IL_0009
?89????//??IL_0009:??ldloc.0
?90????//??IL_000a:??ret
?91????//}?//?end?of?method?Email35::get_EmailAddress
?92
?93????//set自動屬性生成的中間代碼
?94
?95????//.method?public?hidebysig?specialname?instance?void?
?96????//????????set_EmailAddress(string?'value')?cil?managed
?97????//{
?98????//??.custom?instance?void?[mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor()?=?(?01?00?00?00?)?
?99????//??//?代碼大小???????8?(0x8)
100????//??.maxstack??8
101????//??IL_0000:??ldarg.0
102????//??IL_0001:??ldarg.1
103????//??IL_0002:??stfld??????string?linq1.Email35::'<EmailAddress>k__BackingField'
104????//??IL_0007:??ret
105????//}?//?end?of?method?Email35::set_EmailAddress
106
107
?
問題2:
查找每個類別中單價最高的產(chǎn)品:(其實這樣做是達(dá)不到直接顯示結(jié)果的要求的)
在gridview中沒法顯示出來。
?1var?categories?=
?2????from?p?in?db.Products
?3????group?p?by?p.CategoryID?into?g
?4????select?new?{
?5????????g.Key,
?6????????MostExpensiveProducts?=
?7????????????from?p2?in?g
?8????????????where?p2.UnitPrice?==?g.Max(p3?=>?p3.UnitPrice)
?9????????????select?p2
10????};
11
?
問題3:
下面這兩行代碼怎么得到的結(jié)果是一個為什么結(jié)怎么有一個Length列呢(只是字符內(nèi)容的長度)
1var?citys?=?from?p?in?db.Customers?select?new?{?p.Country,p.City?};
2this.dataGridView1.DataSource?=?citys;
3
?
?
?轉(zhuǎn)載于:https://www.cnblogs.com/itelite/archive/2009/03/11/linqproblems1.html
總結(jié)
以上是生活随笔為你收集整理的LINQ to SQL学习的几个问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《碟中谍8》片场:60岁阿汤哥上演跳伞好
- 下一篇: 日元贬值 任天堂率先表态:我们不涨价!