我正在努力在MacOSX上的最新版本ScriptC(v0.14.0)上编译以下文件Bootstrapper.csx
:
using Autofac;
using Nancy.Bootstrappers.Autofac;
public class Bootstrapper : AutofacNancyBootstrapper
{
private readonly ILifetimeScope _lifetimeScope;
public Bootstrapper(ILifetimeScope lifetimeScope)
{
_lifetimeScope = lifetimeScope;
}
protected override ILifetimeScope GetApplicationContainer()
{
return _lifetimeScope;
}
}
它会产生以下错误:
(15,39): error CS0508: `Bootstrapper.GetApplicationContainer()':
return type must be `Autofac.ILifetimeScope' to match overridden member
`Nancy.Bootstrappers.Autofac.AutofacNancyBootstrapper.GetApplicationContainer()'
/Users/tnt/Development/GitHub/scriptcs-gulp-nancyfx/scriptcs_packages
/Nancy.Bootstrappers.Autofac.1.1/lib/net40/Nancy.Bootstrappers.Autofac.dll
(Location of the symbol related to previous error)
我的scriptcs_packages.config
如下:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Autofac" version="3.5.2" targetFramework="net40" />
<package id="Nancy" version="1.1" targetFramework="net40" />
<package id="Nancy.Bootstrappers.Autofac" version="1.1" targetFramework="net40" />
<package id="Nancy.Hosting.Self" version="1.1" targetFramework="net40" />
</packages>
我已根据此示例中的代码,因此我怀疑它应该有效:
如果我做了一些非常明显错误的事情,我会事先道歉但我却看不到它......
更新
遵循Adam Ralph的第一条评论中的流程大纲,它仍然失败(在MacOSX上)如下: