File-->New-->Project-->ASP.NET Web Application-->ASP.NET 5 Preview Templates
你最终在磁盘上有以下文件结构:
>文物
> src
> MyProject.sln
> global.json
相反,如果我决定先创建一个空白解决方案:
File-->New-->Project-->Other Project Types-->Visual Studio Solutions-->Blank Solution
并开始向此解决方案添加一个新的ASP.NET Web应用程序项目;你最终有一个文件结构没有一个global.json文件,没有src文件夹.
根据documentation,global.json文件用于整体解决方案的配置.它只包含两个部分,默认情况下是项目和sdk.
projects属性指定哪些文件夹包含解决方案的源代码.默认情况下,项目结构将源文件放置在src文件夹中,允许将构建工件放置在同级文件夹中,从而更容易将其从源代码控制中排除.
sdk属性指定Visual Studio在打开解决方案时将使用的DNX(.Net执行环境)的版本.它设置在这里,而不是在project.json中,以避免解决方案中的不同项目针对不同版本的SDK的情况.
问题1)
如上所述,如果我选择首先创建一个空白解决方案,我将不会有一个global.json文件.
没有一个global.json文件影响应用程序的任何形状或形式的行为?例如,当我部署或与构建工件的交互?
问题2)
如果它有影响,那么我应该手动创建这个global.json文件?
问题3)
在撰写本文时,ASP.NET 5中是否建议使用多层应用程序?
我应该首先创建MVC项目并开始向项目添加类库吗?
要么
我应该首先创建一个空白解决方案,并开始将Class Libraries和Web应用程序添加到解决方案中(知道我不会有global.json文件和src文件夹)?
解决方法
我看到了src / test文件夹结构的两种方法.如果您查看了MVC team is doing,它们将src / test文件夹合并到存储库根目录中.例如Github上的许多项目在根目录中都有一个src目录.所以只要你的global.json和解决方案文件在你的项目的根目录下,它似乎与现有的做法一致.
如果您看看.NET团队正在使用.NET 5 Core Framework,您将看到类似的模式,尽管没有global.json文件.他们的许多图书馆都有src和测试子目录.
我将尝试在MVC团队暂时做什么之后对我的项目进行模式化,直到我更好地了解.NET 5,DNX和其他内容.它对您的项目施加了一定的结构,但VS 2013和.NET 4.5也是如此.