0

为什么 Visual Studio 11 中的 Nancy / xUnit 测试依赖于 Razor 视图引擎?我正在使用 Nancy 默认视图引擎 (SSVE)。我需要不同的引导程序吗?

测试

[Fact]
public void Register_mentor_Should_redirect_to_mentor_home()
{
    // Given
    var bootstrapper = new DefaultNancyBootstrapper();
    var browser = new Browser(bootstrapper);

    //When
    var response = browser.Post("/register", (with) =>
    {
        with.HttpRequest();
        with.FormValue("role", "mentor");
    });

    // Then
    response.ShouldHaveRedirectedTo("/mentor");
}

我得到以下异常

例外 在此处输入图像描述

4

1 回答 1

0

它没有。您看到该异常有两个原因

  • 您已安装 Nancy.ViewEngines.Razor nuget,其中还包括 Nancy.ViewEngines.Razor.BuildProviders.dll(自 Nancy 0.10 起)。该 dll 用于为 Nancy razor 引擎启用设计时智能感知。该文件通过 Nuget 安装的构建后事件复制到每次构建时的 \bin 目录

  • BadImageFormatException 是因为我们的项目 Nancy.ViewEngines.Razor.BuildProviders 项目中有一个错误,使其仅针对 x86 系统。这已在即将发布的 0.11 版本中解决,并已签入主分支

所以要解决这个问题,删除 Nancy.ViewEngines.Razor nuget(你说你只使用了 SSVE 视图)并且一切都应该正常工作(卸载 nuget 也会卸载构建后事件挂钩)

于 2012-04-03T14:25:21.720 回答