.NET Core 是.NET Framework的新一代跨平台应用程序开发框架,是微软在一开始发展时就开源的软件平台,由于 .NET Core 的开发目标是跨平台的 .NET 平台,因此 .NET Core 包含 .NET Framework 的类库,但与 .NET Framework 不同的是 .NET Core 所有类库都采用NuGet的管理方式,应用程序只需要获取需要的组件即可,与 .NET Framework 大包式安装的作法截然不同,同时各包亦有独立的版本线 (Version line),不再硬性要求应用程序跟随主线版本。

ASP.NET Core 以控制台应用程序驱动其托管环境 Kestrel Server 以支持 ASP.NET Core 程序的运行。ASP.NET Core 在开发初期时 .NET Core 还没有开始起跑,在 .NET Core 逐渐成熟之后,微软决定将它们集成在一起,ASP.NET Core的运行期和工具 .NET Core 以及 .NET CLI 接替提供。ASP.NET Core 并不是ASP.NET 4.6的升级版本,它是在.NET Core上重新设计的ASP.NET平台,拥有众多的新特性,其中最重要的特性就是实现了跨平台。ASP.NET Core 1.0是微软新一代ASP.NET框架,之前的版本为ASP.NET 4.6。


接下来开始构建第一个ASP.NET Core的Web应用。

搭建开发环境

创建一个新工程

新建项目:

  • 打开“新建项目”对话框
  • 找到.NET Core下的“ASP.NET Core Web Application (.NET Core)”选项
  • 将项目命名为“CoreMovie”
  • 点击“确定”

在弹出的对话框中:

  • 选择“Web应用程序”
  • 取消勾选“在云中托管”
  • 点击“更改身份验证”

选择“个人用户账户”,点击“确定”

稍等片刻,Visual Studio会自动搭建工程的脚手架,完成后的项目结构如下:

添加一个Model类

右键点击“Models”目录>添加>类

创建一个“Movie”类

在类中添加以下属性:

属性“ID”是必须的,将作为数据表的主键

构建“控制器”

右键点击“Controllers”目录>添加>控制器

点击“MVC Controller with views, using Entity Framework”,添加

选择“Movie”模型类和“ApplicationDbContext”数据上下文类,使用默认控制器命名,点击添加

Visual Studio会自动创建CRUD的相关方法和视图模板。

更新数据库

点击快捷键Ctrl+F5开始调试,在地址栏中输入“http://localhost:端口号/Movies”,浏览器会提示如下内容:

这是因为还没有更新数据库,需要通过以下步骤进行更新:

  • 打开CMD命令窗口(快捷键Ctrl+R,输入“cmd”,回车)
  • 定位到项目根目录下
  • 输入以下命令完成数据库更新

DOTNET EF命令

  • dotnet (.NET Core) 是.NET的一个跨平台实现
  • dotnet ef migrations add Initial 参数“Initial”是任意的,此操作创建的Data/Migrations/_Initial.cs包含迁移文件命令来向数据库添加(或删除)电影表。
  • dotnet ef database update 使用刚才创建的迁移更新数据库

测试应用程序

刷新浏览器,可以看到如下页面,点击“Create New”创建新条目

创建完成,一个最基本ASP.NET Core应用程序就创建好了。ASP.NET Core拥有众多提高开发效率的新特性,在接下来的文章中会对部分特性进行介绍。

请尽情享受.NET Core带来的开发快感吧!

本文为作者kMacro原创,转载请注明来源:http://www.jianshu.com/p/a98ebd1a46b2。

开始使用ASP.NET Core - 创建第一个Web应用的更多相关文章

  1. ASP.NET Core 入门教程 1、使用ASP.NET Core 构建第一个Web应用

    一.前言 1.本文主要内容 Visual Studio Code 开发环境配置 使用 ASP.NET Core 构建Web应用 ASP.NET Core Web 应用启动类说明 ASP.NET Cor ...

  2. 如何在ASP.NET Core中实现一个基础的身份认证

    注:本文提到的代码示例下载地址> How to achieve a basic authorization in ASP.NET Core 如何在ASP.NET Core中实现一个基础的身份认证 ...

  3. 在ASP.NET Core中实现一个Token base的身份认证

    注:本文提到的代码示例下载地址> How to achieve a bearer token authentication and authorization in ASP.NET Core 在 ...

  4. [转]如何在ASP.NET Core中实现一个基础的身份认证

    本文转自:http://www.cnblogs.com/onecodeonescript/p/6015512.html 注:本文提到的代码示例下载地址> How to achieve a bas ...

  5. 温故知新,使用ASP.NET Core创建Web API,永远第一次

    ASP.NET Core简介 ASP.NET Core是一个跨平台的高性能开源框架,用于生成启用云且连接Internet的新式应用. 使用ASP.NET Core,您可以: 生成Web应用和服务.物联 ...

  6. ASP.NET Core 3.0 一个 jwt 的轻量角色/用户、单个API控制的授权认证库

    目录 说明 一.定义角色.API.用户 二.添加自定义事件 三.注入授权服务和中间件 三.如何设置API的授权 四.添加登录颁发 Token 五.部分说明 六.验证 说明 ASP.NET Core 3 ...

  7. ASP.NET Core MVC中构建Web API

    在ASP.NET CORE MVC中,Web API是其中一个功能子集,可以直接使用MVC的特性及路由等功能. 在成功构建 ASP.NET CORE MVC项目之后,选中解决方案,先填加一个API的文 ...

  8. asp.net core 3.0获取web应用的根目录

    目录 1.需求 2.解决方案 1.需求 asp.net core 3.0的web项目中,在controller中,想要获取wwwroot下的imgs/banners文件夹下的所有文件: 在传统的asp ...

  9. 如何使用ASP.NET Core、EF Core、ABP(ASP.NET Boilerplate)创建分层的Web应用程序(第一部分)

    本文是为了学习ABP的使用,是翻译ABP官方文档的一篇实战教程,我暂时是优先翻译自己感兴趣或者比较想学习的部分,后续有时间希望能将ABP系列翻译出来,除了自己能学习外,有可能的话希望帮助一些英文阅读能 ...

随机推荐

  1. ionic实战系列(二):使用cordova插件

    本章主要关注cordova的各种插件,利用好手机(移动设备)的原生功能.首先cordova是一个将web网页内嵌到原生app的平台(核心功能),然后cordova拥有的插件系统扩展了核心功能. Cor ...

  2. [读书笔记] 四、SpringBoot中使用JPA 进行快速CRUD操作

    通过Spring提供的JPA Hibernate实现,进行快速CRUD操作的一个栗子~. 视图用到了SpringBoot推荐的thymeleaf来解析,数据库使用的Mysql,代码详细我会贴在下面文章 ...

  3. JAVA中反射机制五(java.lang.reflect包)

    一.简介 java.lang.reflect包提供了用于获取类和对象的反射信息的类和接口.反射API允许对程序访问有关加载类的字段,方法和构造函数的信息进行编程访问.它允许在安全限制内使用反射的字段, ...

  4. 比较三个 CSS 预处理器:Sass、LESS 和 Stylus(下)

    五.Mixins (混入) Mixins 有点像是函数或者是宏,当你某段 CSS 经常需要在多个元素中使用时,你可以为这些共用的 CSS 定义一个 Mixin,然后你只需要在需要引用这些 CSS 地方 ...

  5. SQL 软解析和硬解析详解

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt329 当客户端进程,将SQL语句通过监听器发送到Oracle时, 会触发一个 ...

  6. 在STEP7 TIA PORTAL中,设置模块的地址和设备名(Device name)

    assign device name, ip address for PROFINET componet in TIA Portal 方法1: PLC --> online & diag ...

  7. YYHS-NOIP2017SummerTraining0914-问题 A: 组合数问题

    题目描述 组合数C(n,m)表示的是从n个物品中选出m个物品的方案数.举个例子,从(1, 2, 3)三个物品中选择两个物品可以有(1, 2),(1, 3),(2, 3)这三种选择方法.根据组合数的定义 ...

  8. Linux无法连接上127.0.0.1,拒绝连接,更新时提示无法下载,无法正常使用apt-get update

    你是否遇到过这种情况,在Linux以apt-get update 时更新的时候无法更新,提示一下内容 p { margin-bottom: 0.25cm; line-height: 120% } 错误 ...

  9. 【Beta】阶段 第二次Daily Scrum Meeting

    每日任务 1.本次会议为第二次 Meeting会议: 2.本次会议在周二上午9:40,课间休息时间在禹州楼召开,召开本次会议为10分钟. 一.今日站立式会议照片 二.每个人的工作 (有work ite ...

  10. 个人作业3—个人总结(Alpha阶段)

    一.关于Alpha阶段的总结 1.我们团队的情况 关于我们拖拉机团队,大家在一起做项目的这几周算是比较团结.首先组长布置的任务,每个人都有认真去做,每次例会还会总结不足,提出改进,并且实施这些改进:其 ...