首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Startup.cs没有开火

Startup.cs没有开火
EN

Stack Overflow用户
提问于 2015-06-25 22:43:35
回答 1查看 444关注 0票数 2

我正在尝试测试我的MVC项目。为了简单起见,在Startup类中我有:

代码语言:javascript
复制
public static IConfiguration Configuration { get; set; }

public Startup(IHostingEnvironment env)
{
    // Setup configuration sources.
    var configuration = new Configuration()
        .AddJsonFile("config.json");

    Configuration = configuration;
}

我在全球范围内使用这种配置,比如:

代码语言:javascript
复制
private static string connectionString = Startup.Configuration["Database:ConnectionString"];

它可以在文件中找到这个。

我的问题:

当我运行测试时,Startup类似乎没有触发。因此,每当我访问Startup.Configuration时,这个字段都是空

为了读取config.json文件,我能做些什么来触发它呢?不然我还能怎么解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2015-06-26 21:49:10

启动方法通常在您启动web服务器时调用,无论它是在IIS Express、Web侦听器、Kestrel等上。如果您试图运行测试,则需要启动服务器或测试服务器,然后该服务器或测试服务器将调用您的启动方法。

Microsoft.AspNet.TestHost是用于创建基于测试的服务器的一个很好的实用工具。特别是我在这里谈论的TestServerhttps://github.com/aspnet/Hosting/blob/dev/src/Microsoft.AspNet.TestHost/TestServer.cs

下面是我们如何在MVC:https://github.com/aspnet/Mvc/blob/dev/test/Microsoft.AspNet.Mvc.FunctionalTests/TestHelper.cs中使用它

以及创建服务器的实际测试

https://github.com/aspnet/Mvc/blob/cc4ee1068de55a0948c35f5a87f6c05907cb8461/test/Microsoft.AspNet.Mvc.FunctionalTests/DefaultValuesTest.cs#L42

希望这能有所帮助!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31062048

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档