2014-02-19 39 views
0

我只是C#的新手,並試圖在我的項目中通過代碼進行調試。在這麼多的地方,我可以看到這條線在C#中的含義是什麼?

ServiceContainer.Resolve<MyClass> 

我只是想知道這是否會每次都返回相同的對象,也將創造MyClass的一個新對象每次它被調用的時間嗎?

我有兩個類classA和classB。分別放置在命名空間A和B中。名字空間A對B有依賴性,但我需要classB中classA的對象。我無法在A(循環依賴)中創建B的依賴關係。我如何在ClassB中創建ClassA的對象?我希望我很清楚

+3

該行沒有任何上下文,意味着什麼。 – crashmstr

+0

發佈您的代碼,讓我們知道你是如何使用它? – Sachin

+0

閱讀以下內容 http://stackoverflow.com/questions/2176833/ioc-resolve-vs-constructor-injection – Mayank

回答

2

它會返回什麼取決於底層IoC(控制反轉)配置。您可以配置(大多數)IoC容器返回,包括相同的實例,每個Resolve一個實例,每個線程一個實例,每個http請求一個實例等。

還有幾種指定MyClass如何映射到AnotherImplementationOfMyClass(通常MyClass是一個接口)。

通常你會發現映射的範圍和映射配置。 Here你可以找到Ninject的例子