vs html5网站开发,石景山网站制作建设公司,wordpress 发布插件,小甲鱼网站开发2016年6月27日.NET Core ASP.NET Core 1.0在Redhat峰会上正式发布#xff0c;社区里涌现了很多文章#xff0c;我也计划写个系列文章#xff0c;原因是.NET Core的入门门槛相当高#xff0c;很有必要写个深入浅出的系列文章#xff0c;本节内容帮助你入门。我将可能… 2016年6月27日.NET Core ASP.NET Core 1.0在Redhat峰会上正式发布社区里涌现了很多文章我也计划写个系列文章原因是.NET Core的入门门槛相当高很有必要写个深入浅出的系列文章本节内容帮助你入门。我将可能用Windows做开发环境也可能用Linux/Mac但是所有的dotnet CLI命令都是跨平台的我们在windows/Linux/mac平台上开发跨平台的应用。 安装.NET Core .NET Core 包括.NET Core Runtime 和 .NET Core SDK: .NET Core 应用运行依赖的 .NET Core Runtime.NET Core SDK 使用.NET Core开发应用.NET Core Runtime 和 SDKCLI(Software Development Kit/Command Line Interface) 工具 下载地址请到dotnet官方网站dot.net dot dot net非常的好记这个网站也是你入门学.NET Core的入口网站记住这是个必须要去网站。.NET Core 下载的具体地址https://www.microsoft.com/net/download#core这里还列出了注意事项 虽然.NET Core Runtime 和基础库已经1.0 RTM但是开发工具链.NET Core CLI,Visual studio 和Visual Studio Code) 还是预览版具体可以参看https://blogs.msdn.microsoft.com/dotnet/2016/05/06/net-core-rc2-improvements-schedule-and-roadmap/在Windows Servers上部署应用 可以单独安装ASP.NET Core Module for IIS 而不需要安装.NET Core runtime,可以通过命令行DotNetCore.1.0.0-WindowsHosting.exe OPT_INSTALL_REDIST0Mac 系统的最低要求是macOS 10.11 (El Capitan).NET Core 在Red Hat 系列服务器上支持的要 RHEL 7 Server包括CentOS 7 以上具体参看 https://access.redhat.com/documentation/en/dot-net-core/.NET Core 在Ubuntu上面的支持 需要 Ubuntu 14.04 LTS 和 Ubuntu 16.04 LTS如果之前安装了.NET Core的betarc1rc2的版本在安装之前需要把他们卸载掉具体参见 stack overflow 的文章。 .NET Core 的具体安装方法可以参看文章 .Net Core 系列1、环境搭建。 dotnet Command Line Interface(CLI) .NET Core 的dotnet 命令行接口CLI非常重要是我们开发运营都要使用的一套工具Microsoft 为我们提供了这个命令行工具以供我们在开发程序中使用它主要用来进行对代码的编译、NuGet 包的管理、程序的运行、测试等等。简单的说 当一个新人坐在座位上开始学习node, python, ruby, golang 或者其它任何东西时对于绝大多数人来说按照他们的经验就应该如此。使用.NET应当被看做是一件简单的不能再简单的事了。学习并且使用.NET 的伙伴们有着在Go或者Ruby上有相同的经验。这篇文章 .NET Core dotnet 命令大全 介绍了命令行的使用方法dotnet run 命令介绍 更详细的介绍了dotnet run命令。练习例子可以用文章 通过几个Hello World感受.NET Core全新的开发体验 。 我们就来通过一个Hello World例子来学习下dotnet 命令行我们安装好.NET Core 1.0就可以做下面的事情了 dotnet newdotnet restoredotnet run 想象着和我一块儿当你把这个和在Mac, Windows, Linux上运行的 Visual Studio代码相比较时那么你已经获得了一个非常精彩的故事。可以很容易的在很多地方运行开源的.NET 代码。 下面是一段比较长的的代码创建一个控制台应用只要在顶部输入“dotnet”,就可以得到很多能用的东西。 [rootMono helloworld]# dotnet Microsoft .NET Core Shared Framework Host Version : 1.0.1 Build : cee57bf6c981237d80aa1631cfe83cb9ba329f12 Usage: dotnet [common-options] [[options] path-to-application] Common Options: --help Display .NET Core Shared Framework Host help. --version Display .NET Core Shared Framework Host version. Options: --fx-version version Version of the installed Shared Framework to use to run the application. --additionalprobingpath path Path containing probing policy and assemblies to probe for. Path to Application: The path to a .NET Core managed application, dll or exe file to execute. If you are debugging the Shared Framework Host, set COREHOST_TRACE to 1 in your environment. To get started on developing applications for .NET Core, install .NET SDK from: http://go.microsoft.com/fwlink/?LinkID798306clcid0x409 [rootMono ~]# mkdir helloworld[rootMono ~]# cd helloworld[rootMono helloworld]# dotnet newCreated new C# project in /root/helloworld.[rootMono helloworld]# lsProgram.cs project.json[rootMono helloworld]# vi Program.cs[rootMono helloworld]# dotnet restorelog : Restoring packages for /root/helloworld/project.json...log : Writing lock file to disk. Path: /root/helloworld/project.lock.jsonlog : /root/helloworld/project.jsonlog : Restore completed in 2277ms.[rootMono helloworld]# dotnet runProject helloworld (.NETCoreApp,Versionv1.0) will be compiled because expected outputs are missingCompiling helloworld for .NETCoreApp,Versionv1.0 Compilation succeeded. 0 Warning(s) 0 Error(s) Time elapsed 00:00:03.0002808 Hello World![rootMono helloworld]# 通过上面这几个基本命令就把我们的.NET Core 应用运行起来了。 dotnet new new 命令用于创建.NET项目或者是应用 [rootMono ~]# dotnet new --help.NET Initializer Usage: dotnet new [options] Options: -h|--help Show help information -l|--lang LANGUAGE Language of project [C#|F#] -t|--type TYPE Type of project 可以用这个命令创建几个不同类型的的应用类型支持C#和F#C#语言支持的项目类型如下 ConsoleWebLibraryxUnit Test dotnet restore restore命令使用NuGet还原在项目文件project.json 中定义的依赖关系和项目特定的工具。 [rootMono ~]# dotnet restore --help Usage: nuget3 restore [arguments] [options] Arguments: [root] List of projects and project folders to restore. Each value can be: a path to a project.json or global.json file, or a folder to recursively search fo r project.json files. Options: -h|--help Show help information --force-english-output Forces the application to run using an invariant, English-based culture. -s|--source source Specifies a NuGet package source to use during the restore. --packages packagesDirectory Directory to install packages in. --disable-parallel Disables restoring multiple projects in parallel. -f|--fallbacksource FEED A list of packages sources to use as a fallback. --configfile file The NuGet configuration file to use. --no-cache Do not cache packages and http requests. --infer-runtimes Temporary option to allow NuGet to infer RIDs for legacy repositories -v|--verbosity verbosity The verbosity of logging to use. Allowed values: Debug, Verbose, Information, Minimal, Warning, Error. --ignore-failed-sources Only warning failed sources if there are packages meeting version requirement[rootMono ~]# 正如你可以看到从用法:上面的一行还原命令只调用到 nuget3 可执行程序通常您不需要修改这些选项如果您使用的自定义软件包源要么因为您正在使用预发布版本的 Microsoft 库或您的组织使用其自己的软件包源您可能需要指定使用-s 参数的软件包源。 运行 dotnet 还原生成一个锁文件 (project.json.lock)其中包括有关所有被恢复的软件包的详细的信息。 dotnet build build命令会把项目和他所依赖的项目编译成一个二进制文件默认情况下二进制文件是Intermediate Language (IL) 和.dll 为文件扩展名。编译过程依赖于已经存在锁文件(project.json.lock)这是restore命令生成的。 为了生成一个可执行的应用程序您需要确保该项目配置的编译选项设置应用的入口点︰ buildOptions: {emitEntryPoint: true}, 运行命令可以看到使用方法 dotnet build --help
.NET BuilderUsage: dotnet build [arguments] [options]Arguments:
PROJECT The project to compile, defaults to the current directory. Can be one or multiple paths to project.json, project directory or globbing patter that matches project.json filesOptions:
-h|--help Show help information
-o|--output OUTPUT_DIR Directory in which to place outputs
-b|--build-base-path OUTPUT_DIR Directory in which to place temporary outputs
-f|--framework FRAMEWORK Compile a specific framework
-r|--runtime RUNTIME_IDENTIFIER Produce runtime-specific assets for the specified runtime
-c|--configuration CONFIGURATION Configuration under which to build
--version-suffix VERSION_SUFFIX Defines what * should be replaced with in version field in project.json
--build-profile Set this flag to print the incremental safety checks that prevent incremental compilation
--no-incremental Set this flag to turn off incremental build
--no-dependencies Set this flag to ignore project to project references and only build the root project 你可以使用-f 选项来指定你想要编译为一个特定框架。这一框架必须在项目文件中定义。-C 选项允许您指定要使用的配置。它将默认为Debug但您可以指定为Release。 dotnet run 大多数情况下你都是跳过上面的restorebuild直接使用dotnet run命令来运行程序无论是否修改了应用程序都是重新编译生成应用并运行。 dotnet run --help
.NET Run Command
Usage: dotnet run [options] [[--] arg...]]Options:
-h|--help Show help information
-f|--framework Compile a specific framework
-c|--configuration Configuration under which to build
-p|--project The path to the project to run (defaults to the current directory). Can be a path to a project.json or a project directory dotnet run 命令介绍 更详细的介绍了dotnet run命令 -f, --framework 使用提供的 framework 来运行这个 framework 就是对应project.json文件中的 frameworks 节点 -c, --configuration [Debug|Release] 配置使用的环境是 Debug 还是 Release默认为 Debug 模式。 -p, --project [PATH] 指定要运行的项目它可以是project.json的文件路径可以是包含project.json的路径如果没有指定默认是当前路径。 dotnet [assemblyname] 可以用dotnet命令运行已经编译好的应用把应用路径作为参数传递给dotnet命令 dotnet .\bin\Debug\netcoreapp1.0\helloworld.dllHello World! dotnet pack pack命令编译项目并生成NuGet包该操作会生成两个NuGet程序包 一个包括已编译代码的程序集文件一个包括调试符号和已编译代码的程序集文件 项目依赖的NuGet项目添加到生成nuspec文件中默认情况不打包项目之间的引用关系但可以通过更改项目的相关性类型。 dotnet publish 发布命令会编译应用程序并读取项目文件然后将结果集的文件发布到一个目录。生成目录的内容将取决于项目的类型但可以包括一个跨平台的 IL 应用程序和他依赖项这就是通常用的Portable部署方式应用程序共享.NET Core运行时环境与程序集依赖部署的目标机器上需要事先安装.NET Core SDK然后用dotnet命令运行程序。或者是每个本机平台的子文件夹或自包含的应用程序其中包括目标平台的运行时这就是Self-contained部署方式。Self-contained部署方式就是每个应用程序自带.NET Core运行时环境与程序集依赖部署的目标机器不需要安装.NET Core SDK将应用程序文件夹拷贝过来就能运行。 默认的project.json编译出来的应用没有包括跨平台需要修改project.json文件需要在 project.json 加入 runtimes 节点 注释掉 type: platform。 { version: 1.0.0-*, buildOptions: { debugType: portable, emitEntryPoint: true }, dependencies: {hwapp:1.0.0}, frameworks: { netcoreapp1.0: { dependencies: { Microsoft.NETCore.App: { version: 1.0.0 } }, imports: dnxcore50 } }, runtimes:{ win7-x64: { }, win7-x86: { }, osx.10.10-x64: { }, osx.10.11-x64: { }, ubuntu.14.04-x64:{ }, centos.7-x64:{} } } 首先我们要dotnet restore这里我还原的时候有些久大家耐心等待一下因为我们设置4个平台。 dotnet publish -r centos.7-x64 这个生成部署文件的操作是可以跨平台的在Windows上通过 dotnet publish -r centos.7-x64 命令生成Linux的部署文件然后将整个部署文件夹上传到Linux服务器。 dotnet test 测试命令用来运行测试项目使用配置的测试运行程序中定义的测试套件。你会了解更多有关此命令在本教程的后面的章节里了解更详细的内容。 下次我们将深入了解一下到 project.json 文件并开始尝试在如何构建更复杂的应用程序与新的.Net Core。 相关文章 ASP.NET Core 1.0 入门——了解一个空项目ASP.NET Core 1.0 部署 HTTPS .NET Framework 4.5.1.NET Core 1.0、ASP.NET Core 1.0和EF Core 1.0简介云服务器下ASP.NET Core 1.0环境搭建包含mono与coreclr使用VS Code开发ASP.NET Core 应用程序dotnet run是如何启动asp.net core站点的ASP.NET Core提供模块化Middleware组件“dotnet restore和dotnet run都做了些什么探秘 dotnet run 如何运行 .NET Core 应用程序.NET Portability Analyzer 已开源ASP.NET Core的配置1读取配置信息ASP.NET Core的配置2配置模型详解.NET Core 1.0 RC2 历险之旅使用VS Code开发 调试.NET Core 应用程序让我们Core在一起ASP.NET Core .NET Core.NET Core VS Code 环境配置官方博客明确了 .NET Core RC2/RTM 时间表.NET Core全新的配置管理[共9篇]利用记事本创建一个ASP.NET Core RC2 MVC应用微软.NET 正式劈腿成功横跨所有平台.NET Core 1.0 CentOS7 尝试解读发布.NET Core RC2 and .NET Core SDK Preview 1[.NET Core].NET Core R2安装及示例教程ASP.NET Core 开发-中间件(Middleware)结合Jexus Kestrel 部署 asp.net core 生产环境通过Jexus 部署 dotnetcore版本MusicStore 示例程序ASP.NET Core 中文文档 第一章 入门用 Visual Studio Code 在 macOS 上创建首个 ASP.NET Core 应用程序用 Visual Studio 和 ASP.NET Core MVC 创建首个 Web API用 Visual Studio 发布一个 Azure 云 Web 应用程序ASP.NET Core MVC 与 Visual Studio 入门第二章指南4.2添加 ControllerDotNet Core 介绍asp.net core 中间件详解及项目实战教你实践ASP.NET Core Authorization免看文档教程asp.net core 使用 Redis 和 Protobuf 进行 Session 缓存asp.net core 中间件详解及项目实战第二章 指南4.3添加 Viewdotnet core开发体验之开始MVCdotnet core 开发体验之Routing聊聊ASP.NET Core默认提供的这个跨平台的服务器——KestrelServer简析.NET Core 以及与 .NET Framework的关系.NET Core 使用Dapper 操作MySQL使用 CommandLineApplication 类创建专业的控制台程序简析 .NET Core 构成体系.NET Core也可以使用MongoDB了.NET Core ASP.NET Core 1.0在Redhat峰会上正式发布.NET Core面向未来的开源跨平台开发技术微软说它深爱着Linux现在它用行动证明了移植.NET Core计划整合各平台变得更简单了ASP.NET Core 介绍通过几个Hello World感受.NET Core全新的开发体验ASP.NET Core 运行原理剖析1:初始化WebApp模版并运行 原文地址http://www.cnblogs.com/shanyou/p/5636920.html .NET社区新闻深度好文微信中搜索dotNET跨平台或扫描二维码关注 赞赏 人赞赏