2
我在ASP MVC項目中使用LightInject。初始化代碼是或多或少一樣的:http://www.lightinject.net/#mvc使用LightInject在靜態函數中解析實例
我的問題是如何解決在靜態函數實例,例如HTML幫助:
public static string MyHtmlExtension(this HtmlHelper h)
{
var myService = new MyService(); // <- get this from container instead of creating new object
return myService.DoSomething(h);
}
我可以讓ServiceContainer
在MvcApplication
類靜態的還是一個不好的做法?
感謝您的回答。如果我將該函數更改爲'string MyHtmlExtension(this HtmlHelper h,MyService service)',並在'ViewBag'中放置了對'MyService'實例的引用,那會是一個選項嗎? – Marthijn
@Marthijn接受答案,如果它真的有幫助。 :) – RajeshKdev
@RJK,會做。但是我在評論中提出了一個關於答案的問題,所以我首先等待。 – Marthijn