.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. form enctype参数

    application/x-www-form-urlencoded 表示在发送前编码所有字符(默认) multipart/form-data 不对字符编码.在使用包含文件上传控件的表单时,必须使用该值 ...

  2. SpringMVC(三)-- 视图和视图解析器、数据格式化标签、数据类型转换、SpringMVC处理JSON数据、文件上传

    1.视图和视图解析器 请求处理方法执行完成后,最终返回一个 ModelAndView 对象 对于那些返回 String,View 或 ModeMap 等类型的处理方法,SpringMVC 也会在内部将 ...

  3. Web开发中常用的状态码

    在HtttpServletResponse类中有关于状态码的描述. static int SC_ACCEPTED Status code (202) indicating that a request ...

  4. sublime中css输入分号后自动提示的烦恼

    sublime开发前端确实好用,有好多些个的插件,轻量便捷,但是在使用sublime中的一些插件的时候总是会遇到困扰,跟自己想象中的不一样,比如在使用SublimeCodeIntel插件的时候,就会遇 ...

  5. C# 爬虫 Jumony html解析

    前言 前几天写了个爬虫,然后认识到了自己的不足.感谢 "倚天照海- -" ,我通过你推荐的文章,意外的发现了html解析的类库——Jumony. 研究了2天,我发现这个东西简单粗暴 ...

  6. mysql 数据库安装步骤个人总结

    1.mysql-5.7.19-winx64.zip(此为免安装版,318兆左右,还有一种是安装版,380兆左右mysql-installer-community-5.7.19.0.msi)将此安装包解 ...

  7. ThreadLoacl的反思

    在我的随笔 spring mvc:注解@ModelAttribue妙用  中使用ThreadLocal来简化spring mvc控制层controller中的ModelMap,Response.Jso ...

  8. About the diffrence of wait timed_wait and block in java

    import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; /** * * @au ...

  9. struts2和spring mvc的比较

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt236   Struts2 Springmvc       机制 基于filt ...

  10. 第1阶段——uboot分析之仿照bootm制作hello命令(7)

    仿照bootm命令生成来制作一个hello命令,功能:打印出hello,world!和参数值 1.点击New File ,创建cmd_hello.c将./common/cmd_bootm.c的头文件复 ...