请考虑以下代码:
public class InboxMenuItemDynamicProvider : DynamicNodeProviderBase
{
private IMyService _myService { get; set; }
public InboxMenuItemDynamicProvider(IActionService actionService)
{
_myService = myService;
}
public override IEnumerable<DynamicNode> GetDynamicNodeCollection()
{
// use _myService here....e.g. db access
}
}
}
如何使用StructureMap和MVC3将服务依赖项注入Mvc Sitemap DynamicNodeProvider?我正在使用MVC3依赖解析器。
但是,在运行应用程序时,我收到“无默认构造函数”错误。我需要以某种方式将服务依赖注入到提供程序中,但我完全不知道我可以在何处/如何注入它们。我甚至不知道Mvc Site Map是否可能在依赖解析器之外。
答案 0 :(得分:4)
查看此链接: http://mvcsitemap.codeplex.com/discussions/263971
我认为你可以使用:
private IMyService _myService
{
get
{
return DependencyResolver.Current.GetService<IMyService>();
}
}
并且在构造函数中没有任何具体内容