Asp.Net Core-----简介与安装
Asp.Net Core简介
ASP.NET Core 是一个全新的开源、跨平台框架,可以用它来构建基于网络连接的现代云应用程序,比如:Web 应用,IoT(Internet Of Things,物联网)应用和移动后端等。ASP.NET Core可以运行在 .NET Core 或完整的 .NET Framework 之上,其架构为发布到云端或本地运行的应用提供了一个最佳的开发框架,由开销很小的模块化组件构成,这就保持了你构造解决方案的灵活性。你可以跨平台地在Windows、Mac和Linux等设备上开发和运行你的 ASP.NET Core 应用
Asp.net Core历史
第一个 ASP.NET 预览版在2000年就已经作为.NET Framework的一部分发布。15年来net终于在2016年迎来它第一个可跨平台的版本ASP.NET Core 。其中要声明一下:ASP.NET Core 不是ASP.NET 4.6的延续。这是一个全新的框架,它重写了现有的ASP.NET 4.6框架,但小得多,而且更加模块化,与以前的版本它有实质的变化。具体变化后边会详细介绍
Asp.Net Core特点
跨平台
可以在Windows,macOS,Linux上运行
灵活的部署机制
1.Portable applications(便携式应用)
这种部署机制和传统的.NET Framework相似,只要目标平台上存在.NET Core Runtime即可。
2.Self-contained application(自宿主应用)
顾名思义,这种部署机制将应用和运行时共同打包,即便目标平台上没有安装.NET Core Runtime也能正常使用。
第二种方式和.NET Native也是不一样的,仍然使用CoreCLR,而.NET Native使用CoreRT作为运行时,详细信息请见dotnet/corert。
命令行工具
.NET程序所有的运行脚本都可以用命令行工具执行(cmd,bash)这里有几个常见的donnet命令
云优化
你可以在云上在云上部署和调试你的应用
模块化
可以根据你的应用需要向里面添加其他模块
Asp.Net Core的优势
ASP.NET Core有以下优势:
- ASP.NET Core相对于之前的版本有许多变化,才使得它成为一个更加灵活和模块化的框架。
- ASP.NET Core不再是基于System.Web.dll,它基于一组分解在NuGet的包。
- 这使您可以根据实际需要来判断是否引用相应的Nuget包,可以优化您的应用程序。
- 表面积更小的应用程序的好处包括安全更强、维修更少,提高性能,降低成本
使用ASP.NET Core开发程序,你可以得到以下的改进:
- 在Windows、Mac和Linux构建和运行跨平台的Asp.Net Core应用。
- 基于.NET Core的应用,支持真正的应用程序版本控制。
- 新的开发工具使得开发起来更简单。
- 在统一的方案中构建Web UI 和 Web API。
- 云计算环境为基础的配置系统。
- 对依赖注入的内置支持。
- 标签助手使Razor标签与HTML标记更自然。
- 能部署在IIS中,也能部署在自定义的宿主环境中。
- 集成现代客户端开发框架和工作流
- 全新、轻量级、模块化的HTTP请求管道
- 一组全新的工具,简化现代Web 开发
- 开放源代码和社区聚焦
- 在Windows、Mac和Linux等设备上开发和运行 ASP.NET应用
Asp.Net Core 的环境安装
1.下载地址:
.NET Core 2.0 Preview 1:
https://www.microsoft.com/net/core/preview#windowscmd
.NET Core 1.0 and 1.1:
https://www.microsoft.com/net/download/core
注:
1.1、2.0需要vs 2017
1.2、我所做的案例均是在1.0下实现,会有2.0新特性的介绍
2.下载后直接点击安装
3.cmd查看版本(有没有安装jdk的感觉)
4、看一下vs2015上的变化
注:首先确保你的电脑上安装Visual Studio 2015 Update3,当然我们也可以安装 Visual Studio Community 2015,来替代收费版本的Visual Studio 2015.
5、配置好项目文件的位置之后,点击确定,选择模板,身份验证方式,如下图所示:
最新文章
- 基于C/S架构的3D对战网络游戏C++框架_【不定期更新通知】
- Random number
- Linux下的文本编辑工具
- Python操作excel,及图表展示
- Hibernate SQLQuery简单实用,做链接查询
- 用TextPaint来绘制文字
- How To Install Tinc and Set Up a Basic VPN on Ubuntu 14.04
- bzoj 1034 [ZJOI2008]泡泡堂BNB(贪心)
- CodeForces 371D. Vessels
- 有关mysql数据库的编码
- 数据挖掘-Python基本模块
- Oracle EBS-SQL (WIP-6):检查任务已完成但状态是发放的任务.sql
- js实现弹出窗口、页面变成灰色并不可操作的例子
- android screenOrientation
- [RM 状态机详解2] RMAppAttempt状态机详解
- $.ajax({})方法success,error,complete,beforeSend使用例子及解释
- Win7下C:\Users\Cortana以账户名称命名的系统文件夹用户名的修改
- JQuery官方学习资料(译):CSS
- LeetCode-7-反转数组-c#
- Note of Jieba
热门文章
- 探索 vuex 2.0 以及使用 vuejs 2.0 + vuex 2.0 构建记事本应用
- 使用charles抓取htpps的方法
- Oracle修改监听端口号1521[转]
- [Git]01 如何安装和配置
- 谷歌统计使用代码部署和事件API使用
- OSS.Core基于Dapper封装(表达式解析+Emit)仓储层的构思及实现
- 使用HTMLParser爬取标签内容
- poj3067 Japan 树状数组求逆序对
- Java学习笔记——设计模式之三.装饰模式
- 如何在Eclipse下查看JDK源代码