当我有以下代码:
public class Webserver: NancyModule
{
public Webserver()
{
Post[""] = _ => 200;
}
}
一切正常,但是当我有这个
public class Webserver: NancyModule
{
public Webserver(string id="")
{
Post[""] = _ => 200;
}
}
我得到8种内部异常,其中之一是TinyIoCResolutionException: Unable to resolve type: <namespace>.Webserver
。
在可能的相关问题,当我有以下的代码,我得到相同的异常:
public class Webserver<T> : NancyModule
{
public Webserver()
{
Post[""] = _ => 200;
}
}
我安装了南希版本1.4.3
和安装Nancy.Hosting.Self版本1.4.1
。
你的模块必须使用应用程序的TinyIocContainer
可解析。这意味着,你不能传递原始构造函数的参数为TinyIoc不知道如何创建它们。你传递作为参数传递给该模块本身什么都必须通过容器解析。
同样的事情会发生第二种情况。正如你所做出的模块通用,TinyIoc将不知道如何创建它。你可以创建一个抽象的通用基类的模块,但每个模块外露必须关闭这个通用类。