.NET

WCF での P2P の参考 URL

[サンプル] WCF のチャットのサンプル | Microsoft Docs ピア チャネル セキュア チャット | Microsoft Docs ピア チャネル カスタム ピア リゾルバ | Microsoft Docs WCF を使用したピアツーピアの作業処理アプリケーション [ピアリゾルバ] ピア リゾルバー…

log4net サンプル

Global.asax.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Security; using System.Web.SessionState; using log4net; using log4net.Config; namespace Sample { public class Global : Sys…

デザイン時の CompositeControl の挙動

なんかおかしい。 ↓の Items プロパティでは、内部コントロールを返すために EnsureChildControls メソッドを実行しているのだけれど、そうするとデザイン時に正しく処理がされないようで RadioButtonList 内の各項目が表示されない。なぜか、CreateChildCon…

CSS のリンクを動的に追加

HtmlLink cssLink = new HtmlLink(); cssLink.Href = "~/Controls/MyList.css"; cssLink.Attributes["rel"] = "stylesheet"; cssLink.Attributes["type"] = "text/css"; this.Page.Header.Controls.Add(cssLink);

Windows 7 RC に Visual Studio 2010 入れてみた

興味持てそうなのは Dynamic と Contracts かなぁ。Parallel は今の所興味ないや。 とりあえず mscorlib.dll とか System.dll とか System.Core.dll とかに含まれるクラスを軽く流し読みしてみたけど、ちょこちょこ増えてるね。確かどっかで NyaRuRu さんが…

ちょっと手を入れたら

レイジーロード実行時には予め接続が開いていなければいけない - 気楽に諸々NHibernate.Collection.AbstractPersistentCollection クラスにちょっと手を入れたら一応回避できた、けど使い方によっては不都合が生じるかな?

レイジーロード実行時には予め接続が開いていなければいけない

ちょっと不便。 HTTP リクエストを受けてからレスポンスを返すまでの間は接続を開きっぱなしにするというのが妥当な解決策らしい。 まぁ許容範囲内かな。

NHibernate のライセンス形態を勘違いしてた

NHibernate のライセンス形態 - 気楽に諸々 で、 NHibernate を静的にリンクして使用する場合、ソースコードの配布を求められたら拒否できないとのこと。 って書いたけど、静的リンクを勘違いしてた。静的リンクってのは、NHibernate を自作アプリに埋め込む…

VB 6.0 で CLR をホストするコード

ちょっとワケあって、Essential .NET から転載しておく。 Private Sub Form_Load() Dim rt As mscoree.CorRuntimeHost Dim unk As stdole.IUnknown Dim ad As mscorlib.AppDomain Dim s As mscorlib.Stack Set rt = New mscoree.CorRuntimeHost rt.Start rt.…

忘れてた

C#と諸々 パブリックプロパティ (もしくはパブリックフィールド) の善悪GUI 周りと DB 周りの他に、ユニットテストにも関わってくるね。 ユニットテストでも恩恵を得られるけれど、たまに一工夫必要になる。 こんなクラスと public sealed class Hoge { publ…

「The Root of .NET Framework」の一部が Web 上で閲覧可能

The Root of .NET Framework Chapter4-1 – 荒井省三のBlog斜め読みしてみた。「プログラミング .NET Framework 第2版」とか「Essensial .NET」に書かれていることと被ってるトコも多そうだけど、それ以外のことも書かれていそうな感じっぽい。「SOSデバッガ…

やべw間違ってたww

採用試験に挑戦 - 気楽に諸々 ↑検証はあえて投稿後にやったけど、案の定間違ってたw 僕がホントにやりたかったことはこっちのコード class Position { public int X { get; set; } public int Y { get; set; } public void FitToGrid(int gridPitch) { this…

採用試験に挑戦

採用面接で使った課題 テキストエディタと翻訳ツール (笑) 片手にやってみた! ケド、そもそも問題を理解できてないかも…! class Position { public int X { get; set; } public int Y { get; set; } public void FitToGrid(int gridPitch) { this.X = this…

NUnit タスクの assembly タグは

単純に、テキストを nunit-console.exe の引数に追加しているだけなので、アセンブリ名の指定以外にも使えるお。 <nunit> <path>C:\Program Files\NUnit 2.4.8\bin\nunit-console.exe</path> <assemblies> <assembly>Work\SampleProject\SampleProject.sln /config="Release"</assembly> </assemblies> </nunit>

NHibernate のライセンス形態

LGPL だそうで。 NHibernate を静的にリンクして使用する場合、ソースコードの配布を求められたら拒否できないとのこと。 てなわけで、今やってる開発で使おうかなぁと思ってたけどやめといた。 もちろん、実際に求められる可能性は極めて低いだろうけど、そ…

Visual Studio のソリューションを Subversion で管理する時

次のパターンに一致するファイル・フォルダを除外しとけばおkかな? *.suo *.user obj bin Release Debug

アンマネージメモリと GC

Marshal.AllocHGlobal でアンマネージメモリに大容量データを確保したら GC.AddMemoryPressure で GC に報告してやる必要あるのかな…?

大容量データ

画像データを扱うプログラム作ってるんだけれど、処理の過程で 100 MB とかに膨れたり、別フォーマットに変換することで新たに 50 MB のデータが作成されたり…。 で、これを何度か繰り返すと OutOfMemoryException が発生するお…。 たぶん、GC で回収されな…

アンマネージメモリと GC (検証)

アンマネージメモリと GC - 気楽に諸々 を検証してみた! ・マネージメモリ確保 static void Main() { const int size = 200 * 1024 * 1024; byte[] managedBinary = new byte[size]; for (int i = 0; i < size; i++) { managedBinary[i] = 0; } GC.Collect(…

関数の戻り値の扱い

[void]をいつも忘れる - 潜在推力横着する方法を考えてみた>< function Sample { $result = @($Null); &{ 1; 2; $result[0] = @('hoge'); } | Out-Null; return $result; } (Sample)[0] -eq 'hoge';イマイチかなー

C# プロジェクトが作れない & 開けない

Microsoft Visual C# 2008 コンパイラを作成できなかったため、プロジェクト 'ConsoleApplication1' を開けませんでした。 '{74946829-37A0-11D2-A273-00C04F8EF4FF}' の QueryService が失敗しました。 // 追記 (17:20) とりあえず、"別のユーザーとして実…

とりあえず ASP.NET を素早く起動できるようになった

最近 IIS の起動が遅い - 気楽に諸々 の続き 新しい PC が来たのでもう大丈夫と思ったのだが、なんと新しい PC でも同様の現象が (初回から) 発生した。 イベントビューアを見るといくつもエラーが記録されている。(最初の 2 つは PC 起動直後に記録されてい…

InfoQ: LINQ to SQLは本当に終わりなのか?

たとえば、LINQ to Entities(.NET 4.0とともに提供)への頻繁な要求として、POCOとLazy Loadが挙げられます。 InfoQ: LINQ to SQLは本当に終わりなのか? LINQ to SQLとEntity Frameworkの両方のプログラムマネジャーを務めるTim Mallalieu 氏の発言。 .NET…

"Introduction to Code Contracts"

Introduction to Code Contracts [Melitta Andersen] – BCL Team Blog

Timer (System.Threading) クラスと Timer (System.Timers) クラス

System.Timers.Timer は内部的に System.Threading.Timer を利用している。 どちらも、タイマーに登録したハンドラは別スレッド上で実行される。 System.Threading.Timer の場合、ハンドラから例外がスローされればちゃんと AppDomain.UnhandledException イ…

あー、ビューにイベント用意させてんのかぁ

この記事の話。 そーすると、aspx では実装漏れがある程度防止できていいけど、その代わりモックやフェイクの実装が面倒になるんだよなぁ。つか、NUnit の DynamicMock とかじゃ対応不可。 ここはやっぱ、aspx の各イベントハンドラでプレゼンタのメソッド呼…

MSDN に MVP パターンの記事発見

Views Testability Guidanceこの記事から 5 つの記事が辿れるよ

最近 IIS の起動が遅い

前も書いたかな。。。 最近 IIS (6.05.1) の起動というかワーカープロセスの起動がかなり遅い。一度起動しちゃえばそれ以降は快適なんだけど。5分以上かかってタイムアウトになることもある。(その場合一度 iisreset コマンド投げないとダメだし。) 前はそん…

例外がスローされることを期待するユニットテスト

こう書くと Assert.Fail が実行されなくてカバレッジが低下する。 Hoge hoge = new Hoge(); try { hoge.Fuga(); Assert.Fail(); } catch (InvalidOperationException) { } そこでこう書く bool wasThrown = false; Hoge hoge = new Hoge(); try { hoge.Fuga(…

3 つのドメインモデル

[データマッパーによるドメインモデル] ┏━━━━━━━━┓ ┃User Interface ┃──────┐ ┗━━━━━━━━┛ | ↓ | ┏━━━━━━━━┓ | ┃Application ┃──────| ┗━━━━━━━━┛ | ↓ ↓ ┏━━━━━━━━┓ ┏━━━━━━━┓ ┃Infrastructure ┃─→┃Domain Model ┃ ┗━━━━━━━━┛ ┗━━━━━━━┛ Domain Model は…