Dictionary操作
c#
var vhe = new Dictionary<String,String>();
var queryString = context.Request.QueryString;
foreach ( string item in queryString ) {
vhe.Add ( item , CommonFunc.ConvertObjectToString ( queryString[item] ) );
}
return vhe;对以上C#代码用LinQ To Object 进行Coding
LinqToObject
1:
var query = from item in queryString.OfType<String> () select new KeyValuePair<string , string> ( item , queryString[item] ); var vhe = new Dictionary<String , String> (); foreach ( var item in query ) { vhe.Add ( item.Key.ToString () , item.Value.ToString () ); }return vhe;2:
return queryString.OfType<String> () .ToDictionary ( item => item , item => queryString[item] );
LEFT OUTER JOIN 操作
SQL:
代码
SELECT [t0].[MemberID], [t0].[MemberName]
FROM [dbo].[MemberInfo] AS [t0]
LEFT OUTER JOIN [dbo].[MemberSort] AS [t1] ON ( [t1].[MemberType] = 0 ) AND
( [t0].[MemberID] = [t1].[MemberID] )
ORDER BY ( CASE WHEN [t1].[SortNumber] IS NOT NULL THEN [t1].[SortNumber]
ELSE 9999
END )
LINQ:
var data = from m in db.MemberInfo
join s in db.MemberSort on m.MemberID equals s.MemberID
into x
from cx in x.Where(d => d.MemberType == 0).DefaultIfEmpty()
orderby cx.SortNumber.HasValue ? cx.SortNumber.Value : 9999
select m;