65.9K
CodeProject 正在变化。 阅读更多。
Home

使用 ASP.NET MVC Core 1.0 创建一个简单的 MVC 应用程序

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.40/5 (8投票s)

2016年8月16日

CPOL

2分钟阅读

viewsIcon

18345

downloadIcon

187

使用 ASP.NET Core 创建一个简单 MVC 应用程序的分步指南

引言

本文主要关注 ASP.NET Core 项目结构以及如何创建一个基本的 MVC 应用程序。在阅读本文之前,请先了解 MVC、MVVM 和 IOC 的概念。

设置机器

  1. 安装带有 Update 3 的 VS2015
  2. DotNetCore.1.0.0-VS2015Tools.Preview2.0.1

从微软网站下载安装程序:http://www.asp.net/
安装上述软件。成功安装后,打开 VS2015。

创建新项目

Project Template

打开 VS2015,选择 .NET Core 模板并点击确定。然后弹出一个新窗口,选择空模板并点击确定。

新项目的结构与现有的 MVC 4.5 项目结构完全不同。请查看下面的图片

Project Structure

关键点如下

  1. 没有 global.asax 文件。
  2. 没有 Controllers、Views 文件夹、路由配置等。
  3. 以下是一些新增的文件
    1. Program.cs:应用程序的启动点。此类构建你的 webhost,调用 startup 类等。它执行职责链。
    2. Startup.cs:所有应用程序初始化、依赖注入、MVC 设置、路由设置等都在此文件中配置。
    3. Project.json:存储应用程序框架、nuget 包信息(依赖项)、发布选项等。
    4. Global.json:指向应用程序文件夹结构。例如:"projects": [ "src"]

所需的 NuGet 包

将以下 NuGet 包添加到你的应用程序

  • "Microsoft.AspNetCore.Mvc": "1.0.0",
  • "Microsoft.AspNetCore.StaticFiles": "1.0.0",
  • "Microsoft.Framework.Configuration": "1.0.0-beta8",
  • "Microsoft.Framework.Configuration.Json": "1.0.0-beta8"

安装这些 NuGet 包后,Project.Json 将会更新。

设置代码

.NET Core 的一些特性如下

  1. 内置 IOC 容器
  2. 日志记录机制

我们将开发一个应用程序来显示内存中的客户。应用程序结构概述

  1. Domain 文件夹:存储 customer 对象
  2. Repository 文件夹:显示内存中的 customer
  3. Service 文件夹:它将调用 customer 仓库来获取所有 customerscustomer 仓库在构造函数中注入。
  4. Controllers 文件夹:客户控制器创建在其中。Customer 服务在构造函数中注入。
  5. Views:在视图文件夹内,创建 customer 文件夹,其中包含 Index.cshtml 文件。
  6. ViewModel:它存储 customer 视图模型。我们正在使用 MVVM 模式。

有关更多详细信息,请参阅下面的图片

在 Startup.cs 文件中配置 MVC

public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();

            services.AddScoped<ICustomerRepository, CustomerRepository>();
            services.AddScoped<ICustomerAppService, CustomerAppService>();
        }

在上面的代码片段中,我正在添加 MVC 并注册内置 IOC 容器中的所需组件。

 // 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)
        {          
            app.UseMvc(configureRoutes);
        }

        private void configureRoutes(IRouteBuilder routeBuilder)
        {
            routeBuilder.MapRoute("Default", "{controller=Customer}/{action=Index}/{id?}");
        }

在上面的代码中,使用了 MVC 并配置了路由。

这是我们在 .NET Core 中为 MVC 应用程序执行的基本设置。下载源代码以全面了解应用程序。

© . All rights reserved.