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

koala [E-MAIL ADDRESS DELETED]
2013年 5月 29日 (水) 13:17:45 JST


志水さん
ご回答ありがとうございます。koalaです。

> 私と同じ環境と言っているのでkoalaさんの環境もWEBなのでしょうか?
はい。ASP.NETです。

ASP.NETでは、Quillはリクエスト一回ごとに(セッション内)で
singletonのインスタンスを生成する、であっているのでしょうか?

(私はASP.NETどころかWEBも初めてで相当自信ないので)
提案というよりむしろ質問になってしまいますが、
こんなやり方ではダメでしょうか?



> 同じクラスでもユーザの所属で接続先が変わる仕様

・ログインユーザーのデータソース名を返すDaoSettingを作る
・Daoに上記を設定する
・Injectの前にデータソース名を設定しておく

*---
■DaoSetting
Public Class UserDaoSetting
    Inherits TypicalDaoSetting

    Public Overrides ReadOnly Property DataSourceName As String
        Get
            Return System.Web.HttpContext.Current.Session("DataSourceName")
        End Get
    End Property
End Class

■Dao
<Implementation()>
<S2Dao(GetType(UserDaoSetting))>
<Bean(GetType(TestTable))>
Public Interface ITestTableDao
    Function SelectAll() As IList(Of TestTable)
End Interface

■Page_Load
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Session("DataSourceName") = "データソース名"
        QuillInjector.GetInstance().Inject(Me)
---*

この方法だと、ログイン管理DB用のDaoSettingも作って、Daoで明示的に設定したが良いかも?


以上です。 		 	   		  


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