メモ 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;