2010-11-01から1ヶ月間の記事一覧

SqlDbTypeへの変換や推論がそれほど賢くない

ADO.NETでSQL Serverのデータプロバイダに依存しないAPIでDBアクセスしたいのですが、そうもいかないようです。 パラメーターおよびパラメーターのデータ型の構成 (ADO.NET)いくつかの型で「暗黙の変換はエラーになります」とか「推論はサポートされていませ…

SqlDbTypeへの変換や推論がそれほど賢くない? その2

下のエントリの件、8000バイトを超えるバイト配列と4000文字を超える文字列の場合について実際に検証してみましたが、ドキュメントの記載に反して変換されました。ドキュメントがまちがっているんですかねぇ、それとも理解がまちがっているんでしょうか。ど…

設定ファイルの読み込みでクラスのインスタンス化にカスタムのTypeConverterを使う

TypeConverterAttributeにConfigurationConverterBaseを継承したクラスを指定すると任意のクラスをインスタンス化できます。 TypeConverterを使わなくても、プロパティをstringで取得してからインスタンス化すれば同じようなことは実現できますが、TypeConve…

Doma 1.10.2リリース

JavaのO/RマッパーであるDoma 1.10.2をリリースしました。ダウンロードはこちらからどうぞ。 http://doma.seasar.org/downloads.html Maven2 からのご利用はこちらを参照ください。 http://www.seasar.org/wiki/index.php?Maven2RepoRemote Doma 1.10.1から…

HttpUtilityのエンコードいろいろ

Update: How and When to Encode for the Web次のメソッドのちがいを解説。 HtmlEncode HtmlAttributeEncode UrlEncode JavaScriptStringEncode MSDNのAPIドキュメントよりもわかりやすいです。

Doma-Gen 1.10.2のSNAPSHOT

昨日リリースしたばかりのDoma-Genですが、EntityConfigのgenerationTypeパラメータに"sequence"や"table"を指定すると、必要なクラスのimport文が欠けたJavaコードが出力されるという問題がみつかりました。 修正してSNAPSHOTリリースしています。 http://m…

Doma 1.10.1リリース

JavaのO/RマッパーであるDoma 1.10.1をリリースしました。ダウンロードはこちらからどうぞ。 http://doma.seasar.org/downloads.html Maven2 からのご利用はこちらを参照ください。 http://www.seasar.org/wiki/index.php?Maven2RepoRemote Doma 1.10.0から…

App_Dataディレクトリ以下に配置されたファイルへのNLogを使ったログ出力

IIS7.5のアプリケーションプールのデフォルトのユーザーIDであるApplicationPoolIdentityでそのまま出力できました。最初、FileのtargetにfileName="~/App_Data/app.log"と指定していてうまくいかないなぁと思っていたのですが、fileName="${basedir}/App_Da…

ApplicationPoolIdentityについてメモ

リモートのSQL ServerへのWindows認証を稼動確認したい。 Thread: ApplicationPoolIdentity + SQL http://forums.iis.net/p/1162459/1924222.aspx Application Pool Identities http://learn.iis.net/page.aspx/624/application-pool-identities/ Ensure Sec…

ASP.NETでTeedaのリダイレクトスコープのようなものを実装する

ASP.NETでTeedaのリダイレクトスコープのようなものがあると便利かと思って考えてみました。要するに、リダイレクトする直前でセッションに情報を置いて、リダイレクト後のGETでその情報をセッションから取得するという機能です。そんなかんじの機能をつくっ…

ASP.NETでTeedaのリダイレクトスコープのようなもの その2

下のエントリですが、よく考えると属性を指定したPageのプロパティに自動で値をセットしたりプロパティから値を取得したりというのは、ASP.NETのプログラミングモデルにそぐわないですね。自分で明示的にGET/SETしたほうが一貫性があってわかりやすいかも。 …

いくつかのスコープ(状態)を検索対象にして値を得る

一番小さいスコープから一番大きいスコープまでを自動でたどっていくのって、誤って間違ったデータを取得してしまう可能性が高いと思うのです。だから、探すスコープ(状態)とその順番を指定できるといいのかもしれない。 たとえば次のようなクラスを用意し…

Server.TransferしたあとはASP.NETのトレース出力がされない

ASP.NETトレースの機能、便利なんですがServer.Transferしたあとは出力されないことに気づきました。 どういうことかというと、 Web.config <system.web> <trace enabled="true"/> ... </system.web> 最初にアクセスするページ public partial class Default : System.Web.UI.Page { protected void Page_Load…

ASP.NETの実行時のバージョン

ASP.NETのバージョンの取得方法、どれを参照するのがただしいんですかねぇ。 .NET 4.0がインストールされたWindows7の環境でIIS7.5のアプリケーションプールに「.NET Framework v2.0.50727」を指定して次のコードを動かしてみました。 protected void Page_L…

system.transactions/defaultSettingsのtimeout属性とTransactionManager.DefaultTimeout

http://stackoverflow.com/questions/1348191/default-transaction-timeout TransactionOptions.Timeout に0を設定してしまうと設定ファイルに記述したデフォルト値が使われないらしい。 設定ファイルを生かしたいならTransactionManager.DefaultTimeoutを使…

トランザクションの開始と終了をログ出力

トランザクションの開始と終了は基本的にフレームワーク側で自動化するのがいいと思います。フレームワークで処理する場合はログは好きに出せますが、アプリでどうしても制御したいという場合に直接TransactionScopeを実行されるとログに出力されないのが不…

ASP.NET Runtime Cheat Sheet: HttpRequest, HttpRuntime, AppDomain and friendsへのリンク

http://duartes.org/gustavo/articles/Asp.net-Runtime-Cheat-Sheet-HttpRequest-HttpRuntime.aspx どのAPIでどんな値がとれるかがわかりやすく記されています。リンク先のページ自体がそれらのAPIを使って生成されソースコードも公開しているので参考になり…

HttpModuleにパラメータを渡す方法

HttpModule好きなんですが、JavaのServlet Filterのように設定でパラメータを渡せないのが残念なところです。そこで、Web.configにパラメータを設定をすればHttpModuleのプロパティに自動で設定される仕組みを考えてみました。 例えば、Web.configに以下の感…