.netcore入门
开发环境:windows 编辑器: Visual Studio Code
环境安装:
.Net Core 1.1 SDK https://www.microsoft.com/net/core#windowscmd
1.新建控制台项目(参考:https://docs.microsoft.com/en-us/dotnet/articles/core/tutorials/using-with-xplat-cli)
1.1 安装.Net Core 1.1 SDK完成后,打开cmd命令窗口,输入dotnet,可以看到如下,说明安装成功
- E:\lindy\netcoreproject\aspnetcoreapp>dotnet
- Microsoft .NET Core Shared Framework Host
- Version : 1.1.0
- Build : 928f77c4bc3f49d892459992fb6e1d5542cb5e86
- 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 versi
- on.
- 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 y
- our environment.
- To get started on developing applications for .NET Core, install the SDK from:
- http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409
1.2.输入以下命令,可以看到在hwapp目录下创建了一个控制台项目,cmd控制台窗口可看到“Hello World!"输出
mkdir hwapp
cd hwapp
dotnet newdotnet restore
dotnet run
1.3 在vscode下调试项目
用vscode打开hwapp文件夹;在扩展菜单那里找到C#扩展,并安装 ;点击调试菜单,并点击设置栏,选择.net core作为debug环境;打开program.cs文件,点击开始调试(F5),运行可看到调试控制台“Hello World!"输出(ps:默认调试当前打开文件)
2.新建asp.net core程序(https://docs.microsoft.com/zh-cn/aspnet/core/getting-started)
2.1 新建项目
mkdir aspnetcoreapp
cd aspnetcoreapp
dotnet new –t web
2.2 恢复包文件(ps:nuget包默认路径,在当前用户下的.nuget文件夹里,例如C:\Users\lindanyang\.nuget,即我们加载的nuget包都在此路径下)
dotnet restore
此处可能由于被墙的原因,会报如下错误:
error: Failed to retrieve information from remote source 'http://go.microsoft.co
m/fwlink/?LinkID=206669/FindPackagesById()?id='Microsoft.AspNetCore.Diagnostics.
EntityFrameworkCore''.
error: Response status code does not indicate success: 301 (Moved Permanently).
解决方法,在项目路径下添加 NuGet.config 文件,添加nuget源
配置如下:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<!--To inherit the global NuGet package sources remove the <clear/> line below -->
<clear />
<add key="dotnet-core" value="https://dotnet.myget.org/F/dotnet-core/api/v3/index.json" />
<add key="api.nuget.org" value="https://api.nuget.org/v3/index.json" />
<add key="AspNetCI" value="https://www.myget.org/F/aspnetcirelease/api/v3/index.json" />
</packageSources>
</configuration>
2.3 运行网站
dotnet run
.net core版本配置问题也可能导致如下错误:
The specified framework 'Microsoft.NETCore.App', version '1.1.0-preview1-001153-
00' was not found.
- Check application dependencies and target a framework version installed at:
C:\Program Files\dotnet\shared\Microsoft.NETCore.App
- The following versions are installed:
1.1.0
- Alternatively, install the framework version '1.1.0-preview1-001153-00'.
解决方法:
根据dotnet命令获取.net core版本,修改project.json文件的.net core版本Version,如果nuget包的相关版本不对,也要修改:
- "userSecretsId": "aspnet-WebApplication-0799fe3e-6eaf-4c5f-b40e-7c6bfd5dfa9a",
- "dependencies": {
- "Microsoft.NETCore.App": {
- "version": "1.1.0",
- "type": "platform"
- },
保存后再次执行 dotnet restore 和 dotnet run 命令
2.4 打开网站,如下图所示
http://localhost:5000/
2.5 项目文件下有README.md 文件,里面有web项目相关操作的教程网址,可以进一步学习
2.6 vscode操作:vscode操作部分和控制台程序一致,有以下差异:
(1)配置启动程序dll路径,即配置launch.json为如下路径:在name为.NET Core Launch (web)处配置program为${workspaceRoot}/bin/Debug/netcoreapp1.1/aspnetcoreapp.dll
- {
- "name": ".NET Core Launch (web)",
- "type": "coreclr",
- "request": "launch",
- "preLaunchTask": "build",
- "program": "${workspaceRoot}/bin/Debug/netcoreapp1.1/aspnetcoreapp.dll",
- "args": [],
- "cwd": "${workspaceRoot}",
- "stopAtEntry": false,
- "launchBrowser": {
- "enabled": true,
- "args": "${auto-detect-url}",
- "windows": {
- "command": "cmd.exe",
- "args": "/C start ${auto-detect-url}"
- },
- "osx": {
- "command": "open"
- },
- "linux": {
- "command": "xdg-open"
- }
- },
- "env": {
- "ASPNETCORE_ENVIRONMENT": "Development"
- },
- "sourceFileMap": {
- "/Views": "${workspaceRoot}/Views"
- }
- }
(2)注意把之前用dotnet run命令启动的网站停掉:Ctrl+C,否则会报错
(3)注意到\Views\Shared\_Layout.cshtml文件引用的css和js文件并没有在文件夹里,需要另外下载加到路径里,之前dotnet run命令引用到的文件在
- <environment names="Staging,Production">标签里,而vscode是开发模式,引用的文件在<environment names="Development">里,而
- ~/lib/bootstrap/dist/css/bootstrap.css在项目文件夹里并没有,需要自己另外下载,其他的js文件也一样。
- <environment names="Development">
- <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css" />
- <link rel="stylesheet" href="~/css/site.css" />
- </environment>
- <environment names="Staging,Production">
- <link rel="stylesheet" href="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.6/css/bootstrap.min.css"
- asp-fallback-href="~/lib/bootstrap/dist/css/bootstrap.min.css"
- asp-fallback-test-class="sr-only" asp-fallback-test-property="position" asp-fallback-test-value="absolute" />
- <link rel="stylesheet" href="~/css/site.min.css" asp-append-version="true" />
- </environment>
ps:其他详细配置和多项目程序待研究
补充:多项目程序 :http://www.cnblogs.com/ldybyz/p/6483571.html
.netcore入门的更多相关文章
- 如何在Visual Studio 2017中使用C# 7+语法 构建NetCore应用框架之实战篇(二):BitAdminCore框架定位及架构 构建NetCore应用框架之实战篇系列 构建NetCore应用框架之实战篇(一):什么是框架,如何设计一个框架 NetCore入门篇:(十二)在IIS中部署Net Core程序
如何在Visual Studio 2017中使用C# 7+语法 前言 之前不知看过哪位前辈的博文有点印象C# 7控制台开始支持执行异步方法,然后闲来无事,搞着,搞着没搞出来,然后就写了这篇博文,不 ...
- IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题
IT咨询顾问:一次吐血的项目救火 年后的一个合作公司上线了一个子业务系统,对接公司内部的单点系统.我收到该公司的技术咨询:项目启动后没有规律的突然无法登录了,重新启动后,登录一断时间后又无法重新登 ...
- NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json
一.简介 1.读取配置文件是开发过程中使用非常频繁的操作.属称”不能写死“ 二.NetCore读取配置文件 1.新建一个静态公共变量,属称单例. 2.在程序Startup启动时,将系统变量传递给单例. ...
- NetCore入门篇:(八)Net Core项目使用Controller之三
一.简介 1.本节主要说明入参的几种接收方式 二.不限定模式 1.定义一个id入参与一个model入参. 2.get\post分别查看访问效果. api代码 public class OneContr ...
- NetCore入门篇:(六)Net Core项目使用Controller之一
一.简介 1.当前最流行的开发模式是前后端分离,Controller作为后端的核心输出,是开发人员使用最多的技术点. 2.个人所在的团队已经选择完全抛弃传统mvc模式,使用html + webapi模 ...
- NetCore入门篇:(一)Net Core环境安装
一.下载Visual Studio 2017 1.下载地址:https://www.visualstudio.com/zh-hans/downloads/ 2.选择要下载的版本 二.安装Net Cor ...
- NetCore入门篇:(十二)在IIS中部署Net Core程序
一.简介 微软已经为net在iis中的部署提供了良好的支持,在IIS中部署NetCore是一件很容易的事. 二.在IIS中部署Net Core程序 1.微软官方文档有详细说明.进入 2.如果你已经熟悉 ...
- .NetCore 入门
.net core是什么? .net core是一个可以用来构建现代.可伸缩和高性能的跨平台软件应用程序的通用开发框架. 我们为什么要使用.net core,也就是说.net core有什么好处? 跨 ...
- netcore入门-基础
.NETCORE1.0出来了,咦不错,什么开源,跨平台的,观望下等2.0:我擦2.0出来了可以学习了,截止到目前2.1都快出来了,是时候学习一下了. 先建一个webapi项目,从简单的demo开始 l ...
随机推荐
- 论文笔记(1)-Dropout-Improving neural networks by preventing co-adaptation of feature detectors
Improving neural networks by preventing co-adaptation of feature detectors 是Hinton在2012年6月份发表的,从这篇文章 ...
- 使用PerfView监测.NET程序性能(三):分组
在上一篇博客中,我们通过Perfview帮助文件中自带的代码来简单使用了Perfview,了解了基本操作.现在来看看Perfview中的分组操作(Grouping).分组功能都旨将记录到的各种函数调用 ...
- NET npoi 保存文件
npoi完整代码:NET npoi帮助类 public static void DataTableToExcel(List<DataTable> dataTables, string fi ...
- AngularJs创建自定义Service
AngularJs可以创建自定义的service.下面的自定义service实现一个double倍数的服务: 参考下面语法: app.service('double', function () { t ...
- 常用Java集合类总结
此文已由作者赵计刚授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 7.1.List(允许重复元素) ArrayList: 底层数据结构:Object[] 在查询(get).遍 ...
- python--partial偏函数
new_func = partial(函数名,参数), 生成一个新的函数, 新的函数中参数是partial固定时的参数 例1: from functools import partial def f ...
- 转载:TCP/IP四层模型
转载:TCP/IP四层模型 一. TCP/IP参考模型示意图 ISO制定的OSI参考模型的过于庞大.复杂招致了许多批评.与此对照,由技术人员自己开发的TCP/IP协议栈获得了更为广泛的应用. 如图所示 ...
- java操作数据库的基本方法
此次开发工具为eclipse,才有的数据库驱动是mysql-connector-java-5.1.8-bin.jar 第一步,在eclipse的工程目录中引用mysql驱动 驱动下载地址:https: ...
- typescript-koa-postgresql 实现一个简单的rest风格服务器 —— 连接 postgresql 数据库
接上一篇,这里使用 sequelize 来连接 postgresql 数据库 1.安装 sequelize,数据库驱动 pg yarn add sequelize sequelize-typescri ...
- POJ 2509
#include <iostream> #include <stdio.h> using namespace std; int main() { //freopen(" ...