码迷,mamicode.com
首页 > Web开发 > 详细

ASP.NET5 Web默认的项目结构浅析(学习笔记)

时间:2015-10-14 20:02:40      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:

1.说明

   通常一些错误的知识见解发表出来,有可能误导部分读者, 势必造成一定程度伤害。

   说实话,试问那个人没有被别人坑过?理解万岁吧!所以本人的博文,如有误人子弟的地方,还望大侠们扶正!

   如题,本章的知识点介绍只能算浅析了。理解得对不对?不好说。同样算是我的学习笔记就够了。

   ASP.NET5 beta7已经发布一个多月了,预计近几天内该发布beta8了。

   按照官方产品路线图公布来说,beta8该是所有功能开发大体上盖棺定论(不会大变动了)了。

   然后再到RC版,就可用于生产环境中了,这是正式版前,最后一个版本了。

   正式版刚好到年底或年初了,算是微软给粉丝们大大的新年红包啦。请耐心期待哦。

   哎!读者要无语啦!其实这废话无非是要勾起大家“赶脚”学的欲望! 不扯了。

2.创建项目

   新建项目:

   技术分享

   选择项目模板:

   技术分享

   生成的项目结构:

   技术分享

3.项目结构概述

   global.json

{
  "projects": [ "src", "test" ],
  "sdk": {
    "version": "1.0.0-beta7"
  }
}

   它是整体解决方案配置,包含projects和sdk两个部分。

   projects:指定哪些文件夹包含源代码的解决方案。默认情况下项目结构源将这些文件放置在 src 文件夹中,允许生成工件放置在同级文件夹,使它更容易从源代码管理中排除这样的事情。

   sdk:指定 DNX (.Net 执行环境)版本。使用 VS打开解决方案时,它是设置在这里,而不是在 project.json,以避免在解决方案中的不同项目针对不同版本的 SDK 的场景。

    NuGet.Comfig   

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <!--To inherit the global NuGet package sources remove the <clear/> line below -->
    <clear />
    <add key="api.nuget.org" value="https://api.nuget.org/v3/index.json" />
  </packageSources>
</configuration>

    配置刚好和VS设置(“程序包管理器设置”)一致:

   技术分享 

    是不是没有必要这个配置文件?可假如你想从别处找下载安装源,通过配置就很方便啦。

    当你使用dnvm程序包管理工具,也会默认从nuget.org下载,也可以通过这个配置文件改变。

    微软是考虑方便性,才有了这个配置文件。没有它,就使用工具里的默认了。

    wwwroot

    技术分享

    在以前版本的 ASP.NET 中,项目的根通常是网站的根。

    比如在早期版本的项目根放置 1.aspx 文件,它的请求就是web 应用程序的根。

    在现在版本中,支持路由(Cotroller/Action),使它能够解耦从其对应的 Url文件的位置。

    这种路由只用于特定于 ASP.NET 的应用程序逻辑,不是静态的文件需要由客户端到正确呈现所生成的页面。

    资源,如图像、 脚本文件和样式表一般都仍在加载基于他们的应用程序,基于项目的根目录文件结构中的位置。

    它实际是 web 应用程序发布后的根在 web 服务器上运行。

    之外的文件(不放在wwwroot目录里的静态文件),如project.json,外部访问不到的。

    除了安全好处,wwwroot 文件夹还简化了常见任务,如捆绑和缩小,以及自动化使用工具,规划好目录。

    bowernpm

    技术分享

    前端开发工具包。它的配置安装及使用在bower.json,package.json和gulpfile.js。

    grunt和gulp功能类似,你可以使用:

    技术分享

    右键gulpfile.js文件,打开任务:

    技术分享

    关于这方面的知识(特别是js代码)太多,还是另开一篇文章,再介绍了。

    Controller,Models,Views

    对应mvc三大块了,没什么好说啦。

    ViewModels

    界面展示的视图模型或对Models模型组合,再定义等

    Services

    这个就高大上了。在老外的书中,叫什么服务模式。通常分解Controller代码,使得控制器代码少。

    再深入点说,就扯到分层架构上……打住,算了。

    注:通常有了服务(层)模式,再配合持久化层中的仓储(Repositories)模式。

    Migrations

    EF迁移后的文件夹

    hosting.ini

    配置project.json中的commands:

    技术分享

    project.json

    主要dependencies,commands,frameworks配置,很重要哦

    Startup.cs

    这个也关键了,了解它之后,才能对ASP.NET5有所认知了。

4.小结

    由于一会有事,无心思考!下一篇再重点说project.json和Startup.cs(分析代码)

    仓促结束,遗憾! 

  

ASP.NET5 Web默认的项目结构浅析(学习笔记)

标签:

原文地址:http://www.cnblogs.com/givecase/p/4878383.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!