(转) 一步一步学习ASP.NET 5 (一)- 基本概念和环境配置
转发:微软MVP 卢建晖 的文章,希望对大家有帮助。
编者语:时代在变,在csdn开博一年就发了那么的两篇文章,无论是什么原因都觉得有愧了。但是今年重心都会在这里发表一些文章,和大家谈谈.NET, 移动跨平台,云计算等热门话题。希望有更好的交流。
好吧言归正转,开篇和大家先聊一个系列ASP.NET vNext . 相信大家都知道了微软在2014年中开始正式对不同的技术进行了开源。而.NET开源对于微软商业上和技术上都有不同程度的影响。说句实在的,mono社区这么多年终于有了个名份了。这里特别谢谢张善友,衣明志,李杨等微软MVP,他们在不同场合对mono社区的推广非常重要。
一.先和大家看看ASP.NET vNext是什么?
ASP.NET vNext是新一代的构建现代应用和云端应用的.NET框架,它是微软针对开源社区全新的开源和跨平台框架,对于Web应用提供了更加模块化,易扩展,具有异步特性的Web框架。你可以在你的应用中更好地集成MVC ,Entity Framework , SignalR和WebAPI等技术。ASP.NET vNext是一个重新架构的框架,你可以运行在两个不同的运行时中轻量级的Core CLR和Full CLR中。(简单说说Full CLR就是传统的.NET Framework 4.5运行时配合传统的桌面/服务器进行运行,而轻量级的Core CLR则通过命令行方式模拟IIS信道快速启动页面)。看看下图:
2.在ASP.NET vNext 中的K
K是一组帮助ASP.NET vNext编译运行的工具和命令行指令集,也是ASP.NET vNext中的开发代号。它可以让ASP.NET vNext运行于Windows,Linux,MacOS平台上。K由四个部分组成:
KRE- K Runtime Environment
是针对ASP.NET vNext的运行所需要的工具和相应文件的一个包。你可以理解为.NET/Mono framework runtime .
KVM- K Version Manager
管理不同的ASP.NET vNext版本。你可以针对你不同的开发需要和运行需要对版本进行调整。
KPM- K Package Manager
ASP.NET vNext Nuget包管理器。针对项目所需要的包进行管理和调用
K/KLR- K runtime / K language runtime
这个是语言运行环境,你可以用C#,F#或者VB 进行ASP.NET vNext的开发通过K/KLR转译。官方开源是好事,除了传统的语言外,我更寄望会有Swift哦,
对于ASP.NET vNext 这四个K是如何搭配使用,看下图就比较容易理解了
3.如何配置你的ASP.NET vNext环境
由于新的ASP.NET vNext可以在不同平台上开发和运行,意味着你可以选择在不同环境上使用(哈哈你觉得自己牛的话,建议用树莓派哦)。由于官方的文档比较清晰,我这里就省略N个字了。大家可以看这里 ASP.NET vNext环境配置 这里我要补充一点,由于ASP.NET vNext还在beta阶段,所以建议大家尽量多关注官方的github ,你可以随时更新你的运行环境,和了解最新的变化。
4.开发工具选取
Visual Studio 2015是一个最原始的选择,但是我觉得这种东西太过笨重。我更喜欢用轻量级的Sublime +git方式对代码进行管理(我真的不是砸场的)。ASP.NET vNext 对于Sublime 有很好的插件支持,如果大家对其感兴趣点击这里 。以下是本人项目的工作环境,对于对Visual Studio 的开发人员是不是眼前一亮呢?
今天就给大家一个简单的概念,明天会和大家进入项目实战环节,敬请留意
原文地址:http://blog.csdn.net/kinfey/article/details/44306145
欢迎关注本博客微信订阅号 anb-io。每周推送内容,有技术也有生活,和你一起做一个有情怀的程序猿。
(转) 一步一步学习ASP.NET 5 (一)- 基本概念和环境配置的更多相关文章
- Spring MVC 学习总结(一)——MVC概要与环境配置 转载自【张果】博客
Spring MVC 学习总结(一)--MVC概要与环境配置 目录 一.MVC概要 二.Spring MVC介绍 三.第一个Spring MVC 项目:Hello World 3.1.通过Mave ...
- ASP.NET vNext (一)- 基本概念和环境配置
ASP.NET vNext (一)- 基本概念和环境配置 转发:微软MVP 卢建晖 的文章,希望对大家有帮助. 编者语:时代在变,在csdn开博一年就发了那么的两篇文章,无论是什么原因都觉得有愧了.但 ...
- 一步一步学习ASP.NET 5 (一)-基本概念和环境配置
编者语:时代在变,在csdn开博一年就发了那么的两篇文章.不管是什么原因都认为有愧了.可是今年重心都会在这里发表一些文章,和大家谈谈.NET, 移动跨平台,云计算等热门话题.希望有更好的交流. 好吧言 ...
- Android NDK学习(2)Windows下NDK开发环境配置
转:http://www.cnblogs.com/fww330666557/archive/2012/12/14/2817386.html 一.配置好Android开发环境 二.下载安装安卓NDK ...
- Spring MVC 学习总结(一)——MVC概要与环境配置
一.MVC概要 MVC是模型(Model).视图(View).控制器(Controller)的简写,是一种软件设计规范,用一种将业务逻辑.数据.显示分离的方法组织代码,MVC主要作用是降低了视图与业务 ...
- Spring MVC 学习总结(一)——MVC概要与环境配置(IDea与Eclipse示例)
一.MVC概要 MVC是模型(Model).视图(View).控制器(Controller)的简写,是一种软件设计规范,用一种将业务逻辑.数据.显示分离的方法组织代码,MVC主要作用是降低了视图与业务 ...
- Python学习 1 一 Python2.75的安装及环境配置教程
Python2.75的安装及环境配置教程 Python的语法简洁,功能强大,有大量的第三方开发包(模块),非常适合初学者上手.同时Python不像java一样对内存要求非常高,适合做一些经常性的任务方 ...
- 【从零学习Python】Ubuntu14.10下Python开发环境配置
1. 前言 近期在研究计算机视觉的一些算法,也刚開始接触linux,试着在ubuntu下用qt+openCV进行开发,感觉还行.可是Python作为在学术领域广为应用的高级解释性语言.其在计算机视觉的 ...
- 最近学习的 Node.js 基础:安装、环境配置、forever
最近工作中,因为某某某某原因,需要用到Node.js . 发现在很多方面和python很像,比如generator / yield ,比如模块的使用方式,比如http模块. 先安装个环境,windo ...
随机推荐
- Android应用中如何保护JAVA代码
Java Classes字节码的反编译太容易了,有很多功能强大的反编译利器可以轻松的将Java字节码 反转为源代码,但是android中普通.apk文件可以轻松的被反编译为Java源代码吗? 答案是当 ...
- ASP.NET MVC 请求流程:Controller
1.请求进入时,.NET Framework就找出所有的HttpModule,以此调用它们的Init方法,如下图所示,我们重点关注"UrlRoutingModule-4.0"的Ht ...
- 使用C#向Sql Sever中存取网络图片和本地图片(二进制流的形式)
先是做普通的,存储我们本地的图片,将它转化为二进制流存储到数据库对应的表中. 代码如下: string path = "../../A.jpg"; FileStream fs = ...
- CodeSmith连接Oracle
Win7上仅安装了Oracle32位客户端,此时CodeSmith无法连接Oracle数据库. 解决方法一:如果同一台电脑安装了Oracle64位数据库,这样CodeSmith可以连接数据库. 解决方 ...
- 使用List把一个长字符串分解成若干个短字符串
把一个长字符串分解成若干个固定长度的短字符串,由于事先不知道长字符串的长度,以及短字符串的数量,只能使用List. public static void get_list_sbody(String s ...
- ecshop适应PHP7的修改
说实话,ecshop这个系统,到目前也没见怎么推出新版本,如果是新项目,不太建议使用它.不过,因为我一直以来都在使用中,所以不得不更改让其适应PHP新版本.现在PHP 7已经出发行版了,所以更改来继续 ...
- java内存模型-锁
锁的释放-获取建立的 happens before 关系 锁是 java 并发编程中最重要的同步机制.锁除了让临界区互斥执行外,还可以让释放锁的线程向获取同一个锁的线程发送消息.下面是锁释放-获取的示 ...
- Uploadify 上传插件引起Chrome崩溃解决方法
将Uploadify初始化代码延时加载,可解决Chrome崩溃. setTimeout(initUploadify, 60); function initUploadify() { var $Uplo ...
- 实例之JavaScript
使用JavaScript实现5秒倒计时 <html> <head> <meta charset="utf-8"> <title>&l ...
- array's filter
var arr = [ { id: 15 }, { id: -1 }, { id: 0 }, { id: 3 }, { id: 12.2 }, { }, { id: null }, { id: NaN ...