[seasar-dotnet:2195] 【Quill】サーバ起動時(WCF)にS2Containerを初期化する方法について

佐藤 浩 [E-MAIL ADDRESS DELETED]
2012年 8月 25日 (土) 09:57:36 JST


お世話になっております。
佐藤と申します。

C# .Net.4.0
S2Container.NET 1.4.0 RC3
SqlServer2008 R2
Visual Studio 2010
 
サーバ側では、WCFによるWebサービスのみを提供したいと思
っております。
(ASP.NET空のWebアプリケーションのソリューションにWCFサ
ービス追加。)

http://s2container.net.seasar.org/ja/asp.html

を参考に、色々設定を試させていただいているのですが、AOP
や、DIが機能していません。
Web.configに設定を記述し、Global.asaxで、S2Containerの
初期化を行えば良いと考えたのですが、違うのでしょうか?
(コーディングしたクラスは、WindowsアプリでQuillの動作
確認が取れているものを利用)


以下に、私が行った設定を示します。

【Web.config】

<configuration>

<!-- 追加 開始 -->  
  <configSections>
    <section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
    <section name="quill" type="Seasar.Quill.Xml.QuillSectionHandler, Seasar.Quill" />
  </configSections>

  <log4net>
    <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%-5p %d [%t] %m%n" />
      </layout>
    </appender>
    <root>
      <level value="DEBUG" />
      <appender-ref ref="TraceAppender" />
    </root>
  </log4net>
  <quill>
    <dataSources>
      <dataSource name="ds">
        <provider>SqlServer</provider>
        <connectionString>"Server={サーバ名}\\SQLEXPRESS;Database=s2dotnetdemo;Integrated Security=true"</connectionString>
        <class>Seasar.Extension.Tx.Impl.TxDataSource</class>
      </dataSource>
      <assemblys>
        <assembly>Seasar.Dao</assembly>
        <assembly>Seasar.Windows</assembly>
        <assembly>Seasar.Dxo</assembly>
      </assemblys>
    </dataSources>
  </quill>
<!-- 追加 終了 -->
  
   <system.web>
---中略---

【Global.asax ※】
protected void Application_Start(Object sender, EventArgs e)
{
    SingletonS2ContainerFactory.Init();
}

protected void Application_End(Object sender, EventArgs e)
{
    SingletonS2ContainerFactory.Destroy();
} 

※Global.asaxをソリューションに追加し、空のapp.diconを用意。

.NET開発の経験が少ないため、的外れな事を言っていたら、申し訳
ございません。

以上、よろしくお願いいたします 。




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