[seasar-dotnet:2287] Re: Quill、DBFluteでの同一DB、複数スキーマ、同一テーブル構造での接続について

koala [E-MAIL ADDRESS DELETED]
2013年 6月 3日 (月) 17:58:29 JST


koalaです。


微妙に勘違いしていたようなので自己レスです。

> たまたま初めてInjectしたログインユーザーのデータソース名で
> Daoインスタンスが生成されて他のユーザーにも使いまわされるので
> 切り替わるはずがない・・・。

Quillの[S2Dao(typeof(DaoSetting))]は、「静的に」データソースを指定する機能で、
AspectBuilder.cs で、string dataSourceNameを保持する仕様になっていました。
これがデータソースが動的に切り替わらない理由でした。

なので、DaoSettingまるごと(もしくはFunc<string> DataSourceNameなど)を
保持しておけば、動的にデータソースを変更するDaoSettingでも切り替えが機能しました。


dsInterceptor = CreateDataSourceSelectInterceptor(dataSourceName);
↓
dsInterceptor = CreateDataSourceSelectInterceptor(daoSetting);


以上です。 		 	   		  


seasar-dotnet メーリングリストの案内