21

Castle Windsor を使用して、WebApi アプリケーションに Dependency Injection を実装したいと考えています。次のサンプルコードがあります-

インターフェース -

public interface IWatch
{
    {
        DateTime GetTime();
    }
}

の Watch クラスはIWatchインターフェイスを実装します-

public class Watch:IWatch
{
        public DateTime GetTime()
        {
            return DateTime.Now;
        }
}

WebApi コントローラー -以下のようにWatchController -

public class WatchController : ApiController
{
        private readonly IWatch _watch;

        public WatchController()
        {
            _watch = new Watch();
        }

        //http://localhost:48036/api/Watch
        public string Get()
        {
            var message = string.Format("The current time on the server is: {0}", _watch.GetTime());
            return message;
        }
}

現在、WatchController コンストラクターで Watch を使用して IWatch オブジェクトを開始しています。ウィンザー城の依存性注入の原則を使用して、コンストラクター内の IWatch の初期化の依存性を削除したいと考えています。

この WebApi の場合に依存性注入を実装する手順を誰かに教えてもらえますか? 前もって感謝します!

4

3 に答える 3

6

webapi のウィンザー配管に関する Mark Seemann の投稿を読んでください。

于 2013-11-12T08:39:05.167 に答える