タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

LINQに関するshkatouのブックマーク (5)

  • ラムダ式とは? - パジャマdeブロッガー(myugaruのヲタ日記)

    ラムダ式には2通りの使い方がある。 匿名delegateの進化としての使い方 式ツリーとしての使い方 式ツリーというのはコンパイラなどのように式そのものを分解して解釈するようなプログラムを書く場合に式そのものをデータとして保持するような仕組みで利用されるらしい。ちょっと分野が特殊なので(コンパイラでも開発する人にしか意味は無さそう?)とりあえず今のところはあまり深入りせずにおいておく。(いやもちろんプログラムオタクの私は近いうちに軽く深入りさせてもらおうと思っている) まず匿名delegateとしての使い方。たとえばこういうdelegate型があったとする。 delegate int PointHandler(int x, int y);画像処理とかやってると結構使いよさそうなdelegate型。これをC#2.0ではこういう具合に使っていた。 PointHandler handler =

    ラムダ式とは? - パジャマdeブロッガー(myugaruのヲタ日記)
  • 第7回 LINQ応用編(3/3) - @IT

    let句 クエリ式には、もう1つだけ紹介する価値のある句がある。それがlet句である。 このlet句は、クエリ式の途中で値を範囲変数に保存する機能を持つのだが、クエリ式を書いてみても効能が分かりにくい。なくてもクエリ式は書けてしまうのである。実は筆者も存在意義が分かっていなかったが、稿を書くに当たって調べたところ、非常に重要な機能性があることが分かった。 以下、let句を使わない例と、使った例の差を見ていただきたい。注目点はクエリ式から呼び出している変換メソッドの呼び出し回数である。 using System; using System.Linq; class Program { private static int count = 0; private static int conversion(int n) { count++; return n;  // 何か有意義な変換を行ってい

    shkatou
    shkatou 2008/10/10
  • LinqConnect - Fast and Easy to Use ORM Solution

  • [Think IT] 第3回:さまざまなデータソースへのアクセス (2/3)

    遅延実行の注意点 こうしたメカニズムからリスト4のようなプログラムを扱う場合は注意が必要になってくる。 リスト4の例では、(1)のforeachループ1回目のタイミングでSQL Serverに対して問い合わせ(publishersテーブル)が発生する。問題は(2)のタイミングである。(2)では(1)のループごとに(publishersに関連づいた)titlesに対してのSQLSQL Serverに対して毎回発行されてしまうことになる。 この回避方法としては、リスト5のようにサブクエリーを使用した形にすれば、SQL Serverへの問い合わせは1回で済む。 static void Main(string[] args) { using(pubsDataContext pubs = new pubsDataContext()) { var query = from p in pubs.pub

    shkatou
    shkatou 2008/01/30
  • [Think IT] 第2回:LINQによるデータアクセス実装 (1/3)

    開発の視点でみるLINQ 前回はLINQについてドメイン層の各パターンを補完することのできるテクノロジーとして紹介した。今回は開発の視点に絞って、実際にVisual Studio 2008を使用した開発手順や手法についてサンプルを紹介しながら解説していく。 まずは、データアクセスの根底にある問題点から、なぜLINQのテクノロジーが必要とされるのかをみていこう。 データベースアクセスのプログラム記述の問題点 LINQのもっとも重要なポイントは、前回記述したようにさまざまなデータソースにおける共通のアクセス手段を提供することである。しかし、より現場の実装作業に近い観点でも数多くの恩恵を受けることができる。 リスト1はADO.NETの接続型を使用したデータベースアクセスを行うプログラムの記述である。ここでの問題点は「(1)SQLが文字列であること」「(2)パラメーターの型があいまいであること」「

    shkatou
    shkatou 2008/01/16
  • 1