2013/03/05

C# Listからオブジェクトの要素を検索する


久々の更新

2回以上探したロジックなので自前でのっけます。

C# List<T>からオブジェクトの要素を検索する

オブジェクトのコレクションからオブジェクトのプロパティやらフィールドをキーに検索する方法について。

抽出方法として2点見つけた。
1.List<T>.Findとデリゲートで抽出
2.Linqを使って抽出

2.はイマイチLinqを理解していないためパス(ぇ

てわけで、お気楽に1.を記載

まずは、MSDN
http://msdn.microsoft.com/ja-jp/library/x0b5b5bc.aspx

Find以外にもFindAllだのFindLastだのがあるようだ。
目的に応じて使い分ければよし。

で、使い方については以下の通り。

※ Dataクラスにはプロパティ「ID」があるものとする。


例:ID=1であるDataオブジェクトをDatasコレクションから抽出する
int localID = 1; Data data = Datas.Find( delegate(Data d) { return d.ID == localID; } );
同様に複数とりたかった場合はFindAllを使えばいいし、Indexが一番大きいオブジェクトを取得したければ、FindLastを使えばよいということ。

いやぁ便利だねぇデリゲート。

他のやりたいこともそのうち追加しとこう

備忘録
・オブジェクトリストを一発ソート
・オブジェクトリスト内の存在確認

2012/12/29

とりあえず、めも

クロームが重くてかなわない。。。

検索して一番最初に出てくるのがキャッシュフォルダをRAMディスクにしてしまうという方法

忘れると悪いので、やり方が書いてあるブログのアドレスをぺたぺた
http://blog.livedoor.jp/beta2ch/archives/1097587.html

とりあえず、以上。

2012/06/29

ある知り合いのページ

ホームページを作ったそうです。

観光さん.com
http://kankousan.com/

富山県がお勧めとか。

有名になったら、「おれ知り合いだぜ~」言おうと思う。

2012/05/24

SQLServerのすごいやつ2

本日教えてもらった便利なやつは以下の通り!

・sys.database_filesテーブル
これをみると、データベースの物理ファイルに関する情報がわかる!

・dbcc shrinkfile (データベース物理ファイル名, 0)
物理ファイルの圧縮を行う。

また、物理ファイルの圧縮を行う際に、データベースの「復旧モデル」によって圧縮具合が違う。
「完全」の場合、バックアップがなされていないと、DB物理ファイルに持ち続けるため容量が減らない。
 「単純」とかにしていると、一発で大分へるっぽい。

いつもこれで困るから、覚えておこうと思う。

2012/05/12

SQLServerのすごいやつ(隠しストアド編)

職場のDBマスターに教えてもらったSQLServerの隠しストアド

exec sp_MSforeachtable @command1 = "select '?'"

ヘルプに乗ってないやつらしく、かつ便利なやつなので覚えとくといいよ、とアドバイスいただいた。

 何ができるかというと。。。

sp_MSForeachtableで返されるのが、「スキーマ.テーブル名」の一覧

使い方としては、@command1で指定した文内の「?」に上記の「スキーマ.テーブル名」がはめ込まれる。

だから、全テーブルに一括でSQL文をブン投げたい場合に便利 らしい!!

たとえば、これ

CREATE TABLE #temp (
TABLE_NAME sysname,
rows sysname,
reserved sysname,
data varchar(32),
index_size varchar(254),
unused varchar(100)
)

 INSERT INTO #temp EXEC sp_MSforeachtable @command1 = "sp_spaceused '?'"

SELECT * FROM #temp order by table_name

sp_spaceusedで引数に渡したテーブルの使用容量をとれるストアドだが、
これに、sp_MSforeachtableを挟むと、各テーブルのテーブル使用容量を取り出せる。

SQL文がsp_MSforeachtableで取得したテーブル分繰り返されるので、いったん仮想テーブルに詰めて抽出すると、実行したDBのすべてのテーブルの使用容量一覧が取得できる。

べんりー!

2012/04/30

Azureってなんじゃらほい

仕事でAzureを使わないかという話が出た。

何の事だかワケワカメなので、調べようと思ったのでメモをしておく。

2012/04/05

Javaのフォームデザイナ

JavaでSwingを使ったプログラムをちょいちょいいじっているのだが、
フォームを作るのがかなりしんどい。

なぜって、それは。
Visual Studio病だから。

そんなわけで、視覚的にコントロールの配置ができるプラグインを探し回った。

Visual Swing for Eclipse

オープンソースでリンクが切れていない かつ Eclipse1.6での動作確認済み!
NetBeansのデザイナーに似ている。
XMLとか作ってバインドバインドじゃない感じ。
GUIでコントロールを配置すると、クラス内にメソッドを自動生成する。

まぁ、現状、これが一番あってるなぁ。



なぜか、Javaのデザイナ関係はすたれるのが早く(?)、リンク切れだの最近のじゃ動かんだのが多い。
きっとJavaでのデスクトップアプリケーションがまったくはやってないことが原因なんだろうなぁ。
Webとか作りにくくって嫌いなんだが。。。

まぁ兎に角。なくなる前に確保しよう。