[seasar-dotnet:2497] DBFlute+Quillについて

新谷将亮 [E-MAIL ADDRESS DELETED]
2016年 6月 7日 (火) 10:18:10 JST


こんにちは、新谷です。

以前質問させていただいた、DB接続について、
正しく動作するようになりました。
ありがとうございます。

今回は、DBFlute+Quillの使用について、質問させていただきます。

環境
・.NET Framework4.6.1
・DBFlute.NET:dbflute-0.8.9.59
・s2container.net:1.4.1

下記のようなソースがあります。

===================================================
using Core.DBFlute.CBean;
using Core.DBFlute.ExBhv;
using Core.DBFlute.ExEntity;

  [Implementation(typeof(TestBhvService))]
  public interface ITestBhvService
  {
    テーブルEntityクラス GetK010Info(int intNumber);
  }

  public class TestBhvService : TestBase, ITestBhvService
  {
QuillContainer container;

    /// <summary>
    /// コンストラクタ
    /// </summary>
    public TestBhvService()
    {
      QuillInjector injector = QuillInjector.GetInstance();
      container = injector.Container;
      QuillInjector.GetInstance().Inject(this);
    }

    protected テーブルBhvクラス bhv; ←この行が削除できないか?

    /// <summary>
    /// マスタ取得
    /// </summary>
    public テーブルEntityクラス GetK010Info(int intNumber)
    {
      QuillComponent component = container.GetComponent(typeof(テーブルBhvクラス));

      テーブルBhvクラス bhv =
(テーブルBhvクラス)component.GetComponentObject(typeof(テーブルBhvクラス));

      テーブルCBクラス cb = new テーブルCBクラス();

      cb.Query().Setキー_Equal(intNumber);

      return bhv.SelectEntity(cb);
    }
  }

===================================================

上記ソースでは正常に動作します。

しかし、テーブルのBhvクラスをメンバ変数としてしまうと、
全てのテーブルのBhvクラスをメンバ変数としてコンテナに登録する必要がでてきてしまいます。

DBFluteもQuillに対応しているため、
そのようなことはしなくても良いと思っているのですが、
S2ContainerのようにDBFlute.diconも使用しないため、
どこで、対象のクラス(今回の場合、テーブルBhvクラス)をQuillContainerに登録すればよいのでしょうか?
(コンストラクタでコンテナへの登録をし、「GetK010Info」内でコンテナから取り出せると思っております。)

DBFluteの質問をこのメーリングリストに送るのは適切ではないかもしれませんが、
可能であれば、教えていただけませんでしょうか。
-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
URL: <http://ml.seasar.org/archives/seasar-dotnet/attachments/20160607/1902fd13/attachment.html>


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