我想用延迟计算的参数绑定我的控制器。 通用标签

然后我有下一个绑定: 通用标签

问题出在lambda函数上。我想返回Server.MapPath(“ /”)...但是我在c对象中没有请求上下文。如何发送?

有帮助吗?

解决方案

我对Ninject不太熟悉,但是您应该能够在容器中注册提供商,以便能够解析基因标记代码。这样,HttpContextBase现在可以将IFilesRepository用作构造函数参数,当创建HttpContextBase的实例时,容器将使用提供程序将其注入。

要注册提供者(使用委托人来解决服务), 通用标签

但是请注意,由于基于每个Web请求创建了IFilesRepository,因此最有可能需要将IFilesRepository的生活方式更改为“每个Web请求”的生活方式,因此您不希望在具有更长寿命的基因标记代码。您可能希望抽象出“映射路径”功能,以便拥有更长寿命的基因标记代码。

其他提示

由于服务器变量与当前HttpContext相关,因此您将不得不在FilesManager类中检索它(如果需要的话,请使用单独的Interface)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top