タグ

Linqに関するhikazohのブックマーク (6)

  • neue cc - LINQPad Driver + LINQ to BigQueryによるBigQueryデスクトップGUIクライアント

    Happy signed!何かというと、長らく署名の付いていなかったGoogle APIの.NET SDKに署名が付いたのです!署名が付くと何ができるかというと、LINQPadのDriver(プラグイン)が作れます。LINQPadのDriverは署名なしだと起動できないので……。正直、私ももはや署名とか全然重視してないし100億年前の化石概念の負の異物だろ、ぐらいに思ってなくもないのですが、さすがに、LINQPad Driverを作れない、という事態には随分と嘆いたものでした。が、やっと作ることが出来て感無量。そして、実際動かしてみると相当便利ですね。これがやりたかったんですよ、これがー。 LINQ to BigQueryのLINQPad Driverが可能にする範囲は、 サイドバーでのスキーマのツリー表示 thisを読み込んでいるConnectionで認証済みのBigQueryConte

  • L'eclat des jours(2015-12-12)

    _ LINQの途中で列挙分を出力する 周回3つ分くらい遅れでLINQをいろいろ試しまくっているのだが、途中で列挙中の内容を見る方法を考え付いた(先日誰かも言っていたので普通に考え付くことらしいが、そこが周回遅れたるゆえんだ)のでメモ。 using System; using System.Linq; class Test { static void Main() { var array = new int[] { 1, 2, 3, 4, 5 }; Console.WriteLine(array .Where(e => !(Console.WriteLine("elem:" + e) is object)) .Where((element, ind) => ind % 2 == 1) .Sum()); } } voidはobjectではないというのはおもしろい。ただコンパイル時にわかってしま

  • LINQ to Objectサンプル目次:Gushwell's Dev Notes

    01: 条件に一致する要素をカウントする 02: 条件に一致する要素があるかを調べる 03: 全ての要素が条件を満たしているかを調べる 04: 平均を求める 05: 最小値、最大値を得る 06: 文字列を走査する 07: 条件に一致する最初の要素を取得する 08: 条件を満たす要素をN個取り出す 09: 重複を排除する 10: 項目間を任意の文字列でつなぐ 11: 条件に一致する最後のインデックスを求める 12: ある条件以降の要素を複写する 13: 2つのリストが等しいか調べる 14: 2つのリストの和集合を求める 15: リストを一定の値で埋める 16: 配列に連続した値を設定する 17: 指定したフォルダ内から条件に一致したファイル名を列挙する 18: 2つの配列を連結する 19: 配列の全ての要素に対し、ある変換処理をする(1) 20: 配列の全ての要素に対し、ある変換処理をする(

  • LINQ to Objectサンプル(01): 条件に一致する要素をカウントする:Gushwell's Dev Notes

    これからしばらくの間、LINQ to Object の簡単なサンプルコードを掲載していきます。 「LINQ to Object使えば、もうfor や foreach ループはいらない」というのは言いすぎですが、 LINQ to Objectを使うと、ちょっとしたコードは、for文や foreach文を使う必要がありません。 しばらくは、伝統的なループ処理をLINQで書き直すとどうなるかを示していきます。 もう、LINQが世に出てから、かなりの年数が経ちますので、今更感もありますが、この春からC#を始めようという人も沢山いるわけですから、 そんな LINQ初心者の方々に向けて記事をアップしていこうと思います。 第一回目は、条件に一致する要素をカウントするコードです。 ■ループを使ったコード var list = new List<int> { 9, 7, 5, 4, 2, 5, 4, 0,

  • N+1問題を回避せよ! LINQから出力されるSQLを見てみよう&遅延ローディングの光と闇

    前回のおさらい 前回の記事では、データベースに対してLINQメソッド式を使ってクエリを実行する方法について解説しました。多数の条件が指定された場合でも、メソッドチェーン式にメソッドを積み重ねることで簡単に実装できることを確認できました。 今回は、LINQが実際にはどんなSQLに変換されているのかを確認します。また、遅延ローディングの有無によってどのように処理が変わるかを意識し、パフォーマンス問題を解決する方法について解説します。なお、前回作成したサンプルを今回も引き続き使用します。 出力されるSQLを確認してみよう 前回の解説通り、Entity Frameworkは、LINQのクエリ式やメソッド式を、最終的にSQLへと変換してデータベース上で実行しています。この変換は透過的に行われるため、プログラマはLINQを記述する際にSQLをそれほど意識する必要がありません。しかし、データベースプログ

    N+1問題を回避せよ! LINQから出力されるSQLを見てみよう&遅延ローディングの光と闇
  • LINQ to XMLでOpenXMLの名前空間を生成する - kkamegawa's weblog

    Create OpenXML Spreadsheet's xml namespace in LINQ ... ちょこっとOpenXMLのXMLを[Open|Close]XML SDKを使わずに書いてみたらどうなるかということをやってみたら、結構大変。一番悩んだのがXMLの名前空間を作る方法。 mc:Ignorable 属性 OpenXMLに限った話ではなく、XAMLでも「このマークアップは(XMLとしては)無視する」という意味のmc:Ignorableなんて属性があったりしますが、「え、これどうやって作るんだっけ?」と悩んだのが始まり。名前空間作るってサンプルにこんなのないし、XAMLを自前で作っているMSDN blogもありましたが、MemoryStreamで読んで、文字列みつけてそのまま追記するようなやつだったし…。 まさかいくらなんでもそんなことないだろうと試行錯誤した結果がこれ。O

    LINQ to XMLでOpenXMLの名前空間を生成する - kkamegawa's weblog
  • 1