Visual Studio for Mac中的ASP.NET Core
所以你们都听到了#Build 2017的消息,Mac上的Visual Studio已经被完全发布,是一般的。为了庆祝这个版本,我将在我的Mac上写几篇关于构建一些不同的.net应用的帖子。
正如你已经期望的标题,本文将在ASP.NET核心我将使它简短而简单。
我将建立的虚拟应用程序将在电影上。以下是创建新项目并选择ASP.NET Core Empty时的外观。

在选择名称并创建项目之后,Visual Studio只是为您提供了一个简单的网络项目,其中一些nugets正在恢复,在第一次运行时,正如预期的那样,您将在默认浏览器中获得一个旧的漂亮Hello World。

现在让我们探索模板,并了解我们可以免费获得这个Empty模板并开始构建我们的应用程序。
如上图所示,我们为我们生成了两个文件Program.cs和Startup.cs以及Movies.csproj本身,其中包含相关信息,以告诉Visual Studio该应用程序的功能。

现在来看看Program.cs文件 
这个文件实际上有一个Main方法,我们在Web项目中没有看到一段时间,ASP.NET Core应用程序需要一个主机来运行。该主机实现IWebHost接口,暴露了启动主机所需的功能和服务。
上面的行首先创建了WebHostBuilder的一个实例,一个构建和配置主机的类帮助器,首先配置说明是UseKestrel实际上告诉主机使用Kestrel服务器,下一个配置UseContentRoot是告诉主机应该在哪里找到内容您可以看到文件以当前目录作为参数。UseIISIntegration,另一方面加入支持IIS / IIS快速集成和用来指定一个反向代理由红隼进行内部服务器。UseStartup告诉主机如何配置中间件和服务,并且您可以看到这是两个文件之间的链接,它告诉主机在另一个文件中使用启动类的实例。最后,它构建此主机并返回为此角色配置的实例。
下一行host.Run() 是实际运行Web应用程序并阻止调用线程的主机,直到主机关闭。还有一个替代的非阻塞方法host.Start()。
下一个文件Startup.cs是将要使用的实际ASP.NET配置,我们将在随后的帖子和主题中重新访问此文件。
在这个文件中没有什么可以描述的,它很简单(到目前为止)。其中一个方法被声明为添加服务。另一个用于初始配置。
正如你可以看到依赖注入是内置在.NET Core和本机支持的,如果你注意到using语句,你将Microsoft.Extensions.DependencyInjection来处理它。因此,所有的参数值将设在幕后运行时绑定,所有你需要做的就是要求实现的目标IApplicationBuilder,或IHostingEnvironment甚至是ILoggerFactory,你会得到你用一个具体的实施; 当我们探索更多并深入ASP.NET Core时,还有更多的这些来到这里。
该方法中的第一行添加了一个控制台记录器,如果使用Kestrel运行Windows,则您将始终获得一个“命令”窗口,您可以在网页上执行某些操作时查看日志跟踪。在Mac上使用Visual Studio时,这个记录器将被嵌入应用程序输出窗口中。

一个关于ASP.NET Core的intersting的事情,它只是一个核心任何服务,你需要添加或配置,你必须要求它!即使是旧的异常页面(黄色屏幕死亡),现在是一个可爱的淡蓝色屏幕的死亡告诉你什么发生错误,也不是我们只告诉应用程序生成器添加这个DeveloperExceptionPage只在Developement环境中,这是一个很好的实践中,因为您不想在生产中暴露内部代码异常,您可能希望构建自定义的500错误页面。添加此开发人员异常页面实际上是在管道中添加了一个“中间件”,这是一个很快会谈到的主题。
最后一行是管道命令的终止中间件,它侦听来自此服务器的请求。它需要一个委托(处理程序)参数,并且您可以看到这是我们获得“Hello World”的地方,我们只需将纯文本写入当前上下文的Repsonse。
这是所有的这个帖子,非常基本的没有代码实际上是写的,但我相信这个帖子是一个插入ASP.NET核心和初学者即将发布的帖子。
Visual Studio for Mac中的ASP.NET Core的更多相关文章
- 在Visual Studio for Mac中使用fastlane管理iOS的provision
Xamarin开发中,最烦的就是provision的管理了. 全手工的话,要先创建一个key,上传后生成cert文件,再创建provision.如果在手机上调试,还要把手机加到provision中去. ...
- 在 Visual Studio for Mac 中编译和生成
使用Visual Studio将C#生成DLL文件的方法 https://www.cnblogs.com/AaronBlogs/p/6840283.html Visual Studio 开发 - Vi ...
- Visual Studio Code和Docker开发asp.net core和mysql应用
Visual Studio Code和Docker开发asp.net core和mysql应用 .net猿遇到了小鲸鱼,觉得越来越兴奋.本来.net猿只是在透过家里那田子窗看外面的世界,但是看着海峡对 ...
- Visual Studio 2015 RC中的ASP.NET新特性和问题修正
(此文章同时发表在本人微信公众号"dotNET每日精华文章") 微软在Build大会上发布了Visual Studio 2015 RC,这也预示着Visual Studio 201 ...
- docker4dotnet #3 在macOS上使用Visual Studio Code和Docker开发asp.net core和mysql应用
.net猿遇到了小鲸鱼,觉得越来越兴奋.本来.net猿只是在透过家里那田子窗看外面的世界,但是看着海峡对岸的苹果园越来越茂盛,实在不想再去做一只宅猿了.于是,.net猿决定搭上小鲸鱼的渡轮到苹果园去看 ...
- 使用Visual Studio Code创建第一个ASP.NET Core应用程序
全文翻译自:Your First ASP.NET Core Application on a Mac Using Visual Studio Code 这篇文章将向你展示如何在Mac上写出你的第一个A ...
- 【翻译】使用Visual Studio在Azure上部署Asp.Net Core Web应用
配置运行环境 Install the latest Azure SDK for Visual Studio. The SDK installs Visual Studio if you don't a ...
- 在Visual Studio 2017中使用Asp.Net Core构建Angular4应用程序
前言 Visual Studio 2017已经发布了很久了.做为集成了Asp.Net Core 1.1的地表最强IDE工具,越来越受.NET系的开发人员追捧. 随着Google Angular4的发布 ...
- 【Asp.Net Core】在Visual Studio 2017中使用Asp.Net Core构建Angular4应用程序
前言 Visual Studio 2017已经发布了很久了.做为集成了Asp.Net Core 1.1的地表最强IDE工具,越来越受.NET系的开发人员追捧. 随着Google Angular4的发布 ...
随机推荐
- idea 上传代码到 gitee
https://www.2cto.com/net/201804/740238.html 这一步如果是个空仓库可以提交,如果是个已有的项目 Define remote 一下就可以了,不要提交代码
- Jmeter实例(一)_Beanshell脚本断言Mock接口
我们在做接口断言的时候,如果遇到复杂的json,可以考虑用beanshell脚本去解析list,同时加入自定义的断言 Mock例:https://www.easy-mock.com/mock/5cb4 ...
- Class AtomicInteger
Overview Package Class Use Tree Deprecated Index Help Java™ PlatformStandard Ed. 7 Prev Class Next C ...
- win8.1系统下安装ubuntu实现双系统实践教程
寒假闲来无事,一程序猿哥们给发了一个linux的shell编程指南,看了几张感觉不错.于是装一个试试. 没想到一装才知道了那么的问题. 下面开始: step 1: 软件准备:Ubuntu 系统镜像,这 ...
- c++入门之 深入cin
cin 表示输入流,但是究其本质,又能认识到什么呢?先上代码: #include "iostream" };//c++11中使用{}进行重新命名 int main() { usin ...
- 使用mysql,sql语言删除冗余信息
这是表,我们需要操作的就是删除除了学号不同,其它信息都相同的冗余信息 思路:删除表格class3中的冗余的stu_id信息,那么接下来我们应该去筛选哪些stu_id信息是冗余的, 此时我们想到的就是利 ...
- PS滤镜给城市夜空照片添加满天星
原图 一.新建空白图层. 二.填充黑色(编辑→填充). 三.转换为智能对象. 四.添加杂色(滤镜→杂色→添加杂色). 五.使用高斯模糊(滤镜→模糊→高斯模糊). 六.如果你想再次修改模糊效果,可双击该 ...
- Solrcloud(Solr集群)
Solrcloud(Solr集群) Solrcloud介绍: SolrCloud(solr集群)是Solr提供的分布式搜索方案. 当你需要大规模,容错,分布式索引和检索能力时使用SolrCloud. ...
- Django admin参数配置
admin参数配置 一. admin 启动 admin: Django的后台数据管理的web版本 针对Food表,url: http://127.0.0.1:8000/admin/app02/food ...
- windows下linux子系统安装
1.打开Windows功能中的使用于linux的Windows子系统 2.应用商店中下载需要的linux 3.下载完成后运行等待安装并输入用户名密码 4.查看系统信息 先后 sudo apt-get ...