.net framework

DataRowからエンティティにデータをマップするとか

データストアからエンティティを取り出す際に所謂ORMを使うわけだが、そのためのマッパー準備とか。 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using System.Reflection; public class Ob…

前のやり方がダサいのでもう少し

こうする。 class Repository{ override protected void connect(){ if(!externalConnection){ connection = getConnection(); connection.connect(); } } override protected void disconnect(){ if(!externalConnection){ connection.disconnect(); } } } …

モデルの中でのデータベース

たとえばモデル(リポジトリとかテーブルモジュールとか)を構築したらデータベースを勝手に開くとする。 //UI void save_proc(){ var productRepository = new ProductRepository(); productRepository.save(product); } //repository class ProductRepositor…

ORMのアイデア

特に関連エンティティをそのままマップする場合。 リフレクションを使う delegate void setEntity(object entity); を使う リフレクションを使う 遅そう。件数増えると致命的 delegate void setEntity(object entity); を使う マップメソッドを関連エンティ…

特定の型を持ったデータの永続化

といえば良いのか。 treenodeであるようなデータを永続化したい。 interface ITreeNode{ int getId(); void setId(int value); int getName(); void setName(string value); List<ITreeNode> getChildren(); void appendChild(ITreeNode); void removeChild(ITeeNode); </itreenode>…

MSBUILDは馬鹿なのか

/p:OutDir=を使うと「すべての出力先をOutDirに設定する」結果、Asp.net出力先にdllが出力されてしまう。 何もしなければうまくやってくれそうだが、せっかくWEBサイトの参照にプロジェクトを追加しても「ひとたびローカルコピー=Falseと判断されたプロジェ…

asp.net開発を始める前にするべきたった一つのこと

システムの復元機能をオフにするc:\windows以下が変更されると自動で復元ポイントを作るようで、ディスクが足りないと復元ファイルの入れ替えが発生しめちゃくちゃ重くなる。それを避けるためにシステムの復元機能をオフにしてディスクアクセスを減らす。.net…

大量に文字列出力する場合にTextWriterに吐き出す

こんな感じ public void mainControl(){ TextWriter writer = getWriter(); //対象によりStringWriterだったりFileだったり for(int i = 0; i < 1000;i++){ hoge(writer); } } public void hoge(TextWriter writer){ writer.Write("hohohoohohogegeeegegeg");…

com+サービスをリモートで使う

コンポーネントサービスマネージャから該当COM+アプリケーションをエクスポート(.msiと.msi.cabができる) 上でできた.msiと.msi.cabをクライアントホストにコピーし、実行(COM+プロキシがインストールされる) サーバー側設定 コンポーネントサービス>コンピ…