我正在使用MVC6 webapp。我的Startup.cs有以下代码 -
public class Startup
{
public static Microsoft.Framework.ConfigurationModel.IConfiguration Configuration { get; set; }
public Startup(IHostingEnvironment env)
{
//following line throws NullReferenceException
Configuration = new Configuration().AddJsonFile("config.json").AddEnvironmentVariables();
}
}
config.json -
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Server=(localdb)\\MSSQLLocalDB;Database=_CHANGE_ME;Trusted_Connection=True;"
}
}
}
任何帮助?
更新:这个问题不是关于NullReferenceException的全部问题。在 ASP.NET-5 MVC-6,config.json是一个新增功能。我正在使用代码 它出现在几个博客中。这里有几个链接 -
- http://bitoftech.net/2014/11/18/getting-started-asp-net-5-mvc-6-web-api-entity-framework-7/
- https://github.com/aspnet/MusicStore/blob/master/src/MusicStore/Startup.cs
- http://forums.asp.net/t/1999143.aspx?How+to+configure+connection+string+in+MVC+6+in+ASP+NET+vNext
- http://blog.developers.ba/read-config-file-in-asp-net-vnext/
答案 0 :(得分:1)
如果您使用的是Visual Studio的RTM版本,则必须使用asp.net的beta5版本。在此版本中,配置的命名空间已更改。
编辑:您必须添加此软件包:Microsoft.Framework.Configuration.Json
此代码必须适合您:
using Microsoft.Framework.Configuration;
using Microsoft.Framework.Runtime;
namespace Test
{
public class Startup
{
public IConfiguration Configuration { get; set; }
public Startup(IHostingEnvironment env, IApplicationEnvironment appEnv)
{
var builder = new ConfigurationBuilder(appEnv.ApplicationBasePath)
.AddJsonFile("config.json")
.AddEnvironmentVariables();
Configuration = builder.Build();
}
}
}