asp.net core 教程(四)-项目结构

Asp.Net Core-项目结构

  1. Asp.Net Core-项目结构
  2. 案例

在这一章,我们将讨论 ASP.NET Core项目在文件系统上的组成方式以及不同的文件和目录都是如何协同工作的。

让我们打开在前一章创建的FirstAppDemo项目。

在解决方案资源管理器窗口中,右击解决方案节点并选择“Open Folder in File Explorer”。

您将看到在它的根目录下有两个文件︰ FirstAppDemo.sln和global.json。

FirstAppDemo.sln文件是一个解决方案文件。Visual Studio多年来在默认情况下一直使用sln这个扩展名称,如果你想在Visual Studio中打开应用程序,你可以双击这个文件。

还有一个global.json文件。让我们在Visual Studio中打开这个文件。

在global.json文件中,项目的设置是非常重要的。本项目设置告诉ASP.NET去哪里寻找你的源代码以及哪些文件夹包含您的项目源码。

一般新建的项目包含有两个重要的文件夹:包含源码的“source”文件夹和一个“test”文件夹。除非你的项目和源代码都在这两个文件夹中,否则项目将编译失败。如果有必要,你可以根据自己的需要改变这些设置。

我们现在的项目中没有test文件夹。在test文件夹,你可以存放你的单元测试的项目。让我们双击“src”文件夹。

你可以看到FirstAppDemo web应用程序项目现在,双击文件夹。

这些都是应用程序的源代码文件,您也可以在解决方案资源管理器窗口中看到这个文件夹结构。

如果您添加一个新文件到项目文件夹中,该文件将自动被添加到该项目。如果你删除一个文件,该文件也将从项目中删除。项目与文件系统一切保持同步,这与以前的Asp.NET版本有点不同。

当文件更改或将添加了新的文件时,ASP.NET Core也会自动编译您的应用程序。


案例

让我们看看一个简单的例子,在记事本中打开Startup.cs文件:

下面这行代码用来响应向该应用程序发出的每个 HTTP 请求,这里它仅响应 “Hello World !”

让我们修改在上面的截图中的字符串,改为“Hello World! This ASP.NET Core Application”,如以下所示:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

using System; 

using System.Collections.Generic; 

using System.Linq; 

using System.Threading.Tasks; 

using Microsoft.AspNetCore.Builder; 

using Microsoft.AspNetCore.Hosting; 

using Microsoft.AspNetCore.Http; 

using Microsoft.Extensions.DependencyInjection;

using Microsoft.Extensions.Logging;  

namespace FirstAppDemo {

   public class Startup { 

      // This method gets called by the runtime. 

      // Use this method to add services to the container. 

      // For more information on how to configure your application, 

      // visit http://go.microsoft.com/fwlink/?LinkID=398940

      public void ConfigureServices(IServiceCollection services) { 

      }  

      

      // This method gets called by the runtime. 

      // Use this method to configure the HTTP request pipeline. 

      public void Configure(IApplicationBuilder app, 

         IHostingEnvironment env, ILoggerFactory loggerFactory) { 

         loggerFactory.AddConsole();  

         

         if (env.IsDevelopment()){ 

            app.UseDeveloperExceptionPage(); 

         }  

         app.Run(async (context) => { 

            await context.Response.WriteAsync(

               "Hello World! This ASP.NET Core Application");

         });

      

   

}

在文本编辑器中按Ctrl+S保存这个文件,然后回到web浏览器,刷新应用程序。

你现在可以看到你的更改会反映在浏览器中。

  • 这是因为 ASP.NET 会监视文件系统,当文件发生更改时自动编译应用程序。你不需要显式地在 Visual Studio 中重新编译应用。
  • 实际上,您完全可以使用一个不同的编辑器,像Visual Studio Code等。
  • 所有您使用Visual Studio时需要做的就是通过运行调试器启动web服务器。你也可以按 Ctrl + F5,可以编辑文件,保存文件,刷新浏览器来查看更改。
  • 这是使用C#构建 web 应用程序的很好的流程。
时间: 2024-10-13 04:00:25

asp.net core 教程(四)-项目结构的相关文章

Asp.Net Core 2.0 项目实战(6)Redis配置、封装帮助类RedisHelper及使用实例

本文目录 1. 摘要 2. Redis配置 3. RedisHelper 4.使用实例 5. 总结 1.  摘要 由于內存存取速度远高于磁盘读取的特性,为了程序效率提高性能,通常会把常用的不常变动的数据存储在系统内存中,提升数据读取的速度,在C#下常见的内存操作有微软自带的内存处理.分布式缓存Memcached以及Redis,这里我们介绍Redis分布式缓存,另外两种缓存处理参考<Asp.Net Core 2.0 项目实战(8)Core下缓存操作.序列化操作.JSON操作等Helper集合类>

ASP.NET Core 介绍和项目解读

1. 前言 2. ASP.NET Core 简介 2.1 什么是ASP.NET Core 2.2 ASP.NET Core的特点 2.3 ASP.NET Core 项目文件夹解读 2.3.1 项目文件夹总览 2.3.2 project.json和global.json 2.3.1 Properties——launchSettings.json 2.3.4 Startup.cs (1) 构造函数 (2) ConfigureServices (3) Configure 2.3.5 bundlecon

CentOs 7.2 + Nginx 1.10.2 + MusicStore(asp.net core mvc 3 项目)虚拟机完整搭建流程分享

原创辛苦,谢绝转载! 虚拟机说明 搭建这个虚拟机是为了验证Asp.net Core程序在CentOs操作系统上可以运行的. #软件环境版本枚举OS:CentOS Linux release 7.2.1511 (Core) OS Kernel:Linux version 3.10.0-327.36.3.el7.x86_64 ([email protected]) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) ) #1 SMP Mon Oct

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

1.说明 通常一些错误的知识见解发表出来,有可能误导部分读者, 势必造成一定程度伤害. 说实话,试问那个人没有被别人坑过?理解万岁吧!所以本人的博文,如有误人子弟的地方,还望大侠们扶正! 如题,本章的知识点介绍只能算浅析了.理解得对不对?不好说.同样算是我的学习笔记就够了. ASP.NET5 beta7已经发布一个多月了,预计近几天内该发布beta8了. 按照官方产品路线图公布来说,beta8该是所有功能开发大体上盖棺定论(不会大变动了)了. 然后再到RC版,就可用于生产环境中了,这是正式版前,

asp.net core 1.1 项目升级至 asp.net core 2.0 preview 2

这两天把一个 asp.net core 1.1 的项目迁移到了 asp.net core 2.0 preview 2 ,在这篇随笔中记录一下. 如果项目在有 global.json 文件,需要删除或修改为 .net 2.0 preview 2 的 sdk 版本号. 对于类库项目的 .csproj,需要把 TagetFramework 改为 netstandard2.0 ,比如 <PropertyGroup> <TargetFramework>netstandard1.6</T

将 ASP.NET Core 2.0 项目升级至 ASP.NET Core 2.1.3X

在上一篇文章ASP.Net Core 运行错误 Http Error 502.5 解决办法的最后有提到说,最推荐的升级办法是从2.0升级到2.1X版本. 操作如下 项目的例子直接使用https://github.com/52ABP/52ABP.School?作为对象,毕竟他正好是.NET CORE 2.0的版本. 首先要下载SDK包. 地址:https://www.microsoft.com/net/download 下载最新的.NET Core 2.1的版本. 打开LTM.School项目后,

ASP.NET Core教程:ASP.NET Core 程序部署到Windows系统

一.创建项目 本篇文章介绍如何将一个ASP.NET Core Web程序部署到Windows系统上.这里以ASP.NET Core WebApi为例进行讲解.首先创建一个ASP.NET Core WebApi项目,使用默认的Values控制器,这里使用Visual Studio 2019创建一个ASP.NET Core 3.1d的WebApi项目. 创建新项目的时候选项ASP.NET Core Web应用程序,如下图所示: 配置新项目界面界面设置项目名称和位置,如下图所示: 选择.Net Cor

ASP.NET Core教程:ASP.NET Core程序部署到Linux

一.前言 这篇文章我们将讲解如何将ASP.NET Core 程序部署到Linux.这里我们使用的是虚拟机里面安装的Centos7.这里的ASP.NET Core程序,以上篇文章中发布的框架依赖文件为例进行讲解. 二.安装运行时环境 1.在线安装 我们只是在Linux系统上面部署应用程序,所以只需要安装ASP.NET Core Runtime即可.在安装.NET之前,我们需要先注册Microsoft密钥和源,在终端里面执行下面的命令: sudo rpm -Uvh https://packages.

ASP.NET Core实现类库项目读取配置文件

.NET Core类库项目读取JSON配置文件 在应用程序目录下添加JSON文件是进行如下配置:                 var builder = new ConfigurationBuilder()                 .SetBasePath(env.ContentRootPath)                 .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)