ListPage

2010年8月4日水曜日

C# VB.NET LINQメモ

メモ LINQ


配列から特定の条件を指定し抜き出す

VB.NET

Dim PenType As String() = New String() {"えんぴつ","クレヨン","シャープペンシル","ボールペン"}
 Dim result As IEnumerable(Of String) = From Pens In Pentype Where Pens.Length <= 5

C#

string[] PenType = new string[] 
            {
  "えんぴつ",
  "クレヨン",
  "シャープペンシル",
  "ボールペン"
            };

            IEnumerable result = from pens in PenType where pens.Length <= 5 select pens;

SQL

select * from pentype where length(pen.name) <= 5

sql func

create or replace function length(v_invalue in varchar2)
return int_outvalue
is
begin
 return nvl(length(v_invalue),0);
end;
/

VB.NET / C# メモリ内クエリは、えんぴつ クレヨン ボールペン くせがあって相変わらず戸惑うな・・。

特定の条件を付けWindowsのサービスを取得

開始状況がRunningのサービスを全て取得

VB.NET

'dobon.net sample 
        '参照設定 System.ServiceProcess
        Dim scs As System.ServiceProcess.ServiceController()
        scs = System.ServiceProcess.ServiceController.GetServices()

        For Each item As System.ServiceProcess.ServiceController In scs
            Console.WriteLine(String.Format("サービス名{0}  状態{1}", item.DisplayName, item.Status))
        Next

        'linq
        Dim result As IEnumerable(Of String) = From sc In scs _
         Where sc.Status = System.ServiceProcess.ServiceControllerStatus.Running _
         Select sc.DisplayName

C#

///dobon.net sample 
     ///参照設定 System.ServiceProcess
   System.ServiceProcess.ServiceController[] scs;
            scs = System.ServiceProcess.ServiceController.GetServices();

            foreach (System.ServiceProcess.ServiceController item in scs)
            {
                Console.WriteLine(string.Format("サービス名{0}  状態{1}"
                    ,item.DisplayName,item.Status));
            }

     ///linq
            IEnumerable result =
                from sc in scs
                where sc.Status == System.ServiceProcess.ServiceControllerStatus.Running
                select sc.DisplayName;

0 件のコメント:

コメントを投稿