ASP.NET MVC 6:https://docs.asp.net/en/latest/mvc/index.html

ASP.NET Core :https://docs.asp.net/en/latest/fundamentals/index.html

cli-samples  : https://github.com/aspnet/cli-samples

以下是我在学习过程中的一些总结,作此记录

抱怨!

微软的发布候选版本真是坑爹……

1:三月初开始看 ASP.NET Core ,利用 2015 搭建了个测试项目,一切正常一切 OK,可以说是一步到位没有任何问题(开心得不得了,感觉都快上天了)

2:可惜好景不长,就这本周将项目更新到了RC2,项目的程序包还原就一直报错:【引用(错误-参阅“错误列表”)】(失落、悲愤、狂躁……)

3:四处寻觅,终得.NET跨平台之旅:将示例站点从 ASP.NET 5 RC1 升级至 ASP.NET Core 1.0,喜出望外。

4:今天利用 dotnet restore 更新了包之后又 GG 了。

 

疑问?

脑子不够用呀,谁有多的给我来两斤!

1:CR2 后,如何将项目寄宿到 IIS 或者 IIS Express 中?

2:为何我 2015 中,我右键引用-还原程序包总是报错【引用(错误-参阅“错误列表”)】,然而在命令行中使用 dotnet restore 之后又正常了。

3:有时候会出现【no actions matched the current request】的错误,说什么路由已经匹配成功了,但是请求匹配不到 action,这又是个什么梗?但是当我重新修改 Startup.cs 文件之后就又可以了!(2016年3月22日 14:35:18:根据园友分享,本错误是因为.net core 不是最新版本导致的

   …………

N:and so on.

 

基本配置

时间:2016年3月17日 19:05:03

1,程序入口配置(Program.cs):

public class Program
{
    public static void Main(string[] args)
    {
        var host = new WebHostBuilder()
                    .UseServer("Microsoft.AspNetCore.Server.Kestrel")
                    .UseContentRoot(Directory.GetCurrentDirectory())
                    .UseDefaultConfiguration(args)
                    .UseIISPlatformHandlerUrl()
                    .UseStartup<Startup>()
                    .Build();

        host.Run();
    }
}
注:3.15打假日将 UseApplicationBasePath(Directory.GetCurrentDirectory()) 修改为 UseContentRoot(Directory.GetCurrentDirectory()) 反正搞不清为什么,记录下。
 
2,启动项程序(Startup.cs):
public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();
        services.AddTransient<Model.Services.StatisticsService>();
    }

    public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
    {
        app.UseMiddleware<artifacts.Middlewares.TimeRecorderMiddleware>();

        loggerFactory.AddConsole(LogLevel.Debug);

        app.UseIISPlatformHandler();
        app.UseForwardedHeaders(new ForwardedHeadersOptions
        {
            ForwardedHeaders = ForwardedHeaders.All
        });

        app.UseStaticFiles();

        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }

        app.UseMvcWithDefaultRoute();
    }
}

配置好入口程序和启动程序后通过命令 dotnet restore 更新包,然后键入 dotnet run 开启自我寄宿服务。

就可以通过 http://localhost:5000 通过默认路由加载页面。

好了,简单配置就是这样啦。

 

从无建站的简单流程

1,win + R 键入 cmd ,然后定位到一个目录(我的目录是D:\ASP.NET)。

D:\ASP.NET>dotnet new
Created new C# project in D:\ASP.NET.

 

2,通过命令 dotnet new 初始化一个简单基础的 .net 项目。

D:\ASP.NET>dotnet restore
log  : Restoring packages for D:\ASP.NET\project.json...
info : Committing restore...
log  : Restore completed in 4200ms.
NuGet Config files used:
    D:\ASP.NET\NuGet.Config
    C:\Users\Administrator\AppData\Roaming\NuGet\NuGet.Config
Feeds used:
    https://dotnet.myget.org/F/dotnet-core/api/v3/index.json
    https://api.nuget.org/v3/index.json

 

3,输入启动的命令 dotnet run ,启动程序。

D:\ASP.NET>dotnet run
Compiling ASP.NET for DNXCore,Version=v5.0

Compilation succeeded.
    0 Warning(s)
    0 Error(s)

Time elapsed 00:00:03.2201958

Hello World!

 

4,就这样运行起来了,很容易入门呀

//Program 文件
    public class Program
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }

 

注:目录结构为:

D:.
│  NuGet.Config
│  Program.cs
│  project.json
│  project.lock.json
│
├─bin
│  └─Debug
│      └─dnxcore50
│          │  ASP.NET.dll
│          │  ASP.NET.pdb
│          │
│          └─win7-x64
│                  ASP.NET.deps
│                  ASP.NET.dll
│                  ASP.NET.exe
│                  ASP.NET.pdb
│                  hostpolicy.dll
│
└─obj
    └─Debug
        └─dnxcore50
                dotnet-compile-csc.rsp
                dotnet-compile.assemblyinfo.cs
                dotnet-compile.rsp

 

因为 dotnet new 创建的是控制台应用程序,所有就只有一个Program文件。

如果需要搭建 WEB 应用程序,就需要添加 Startup.cs 文件(上面有),然后在 Program.cs 中利用 WebHostBuilder 来寄宿。

ASP.NET Core 行军记 -----拔营启程的更多相关文章

  1. ASP.NET Core 行军记 -----第一步(艰辛的 MVC Hello World)

    现在ASP.NET Core还在不断成长.更新中,说不定到了明天又换了个模样,就如同一个小孩,从蹒跚学步,到奔向未来. 所以我们可以相应的去理解更新中所发生的变化,包容它.呵护它,而不是盲目的指责与批 ...

  2. ASP.NET Core奇遇记:无用户访问,CPU却一直100%

    这是5月11日遇到的一个问题,1台1核1G阿里云Linux服务器运行着生产环境中的ASP.NET Core站点,出现CPU 100%问题. 开始以为是这台服务器负载高引起的,于是将这台服务器从负载均衡 ...

  3. ASP.NET Core文章汇总

    现有Asp.Net Core 文章资料,2016 3-20月汇总如下 ASP.NET Core 1.0 与 .NET Core 1.0 基础概述 http://www.cnblogs.com/Irvi ...

  4. ASP.NET CORE 边学边记之 SwaggerUI简单配置

    前言 当使用 ASP.NET CORE 开发WebApi程序时候,一般使用SwaggerUI生成接口文档.本文记录最简单的一个配置.(生成的文档无注释) 操作 首先安装Nuget包. 然后在Start ...

  5. Abp vNext框架 从空项目开始 使用ASP.NET Core Web Application-笔记

    参考 Abp vNext框架 从空项目开始 使用ASP.NET Core Web Application http://www.vnfan.com/helinbin/d/745b1e040c9b4f6 ...

  6. 记一次asp.net core 在iis上运行抛出502.5错误

    asp.net core 在iis上运行抛出502.5异常的部分原因以及解决方案 环境说明 已安装 .net core runtime 2.1.401 已安装 .net core windows ho ...

  7. 记一次Docker中部署Asp.Net Core 3.0的踩坑过程

    最近公司打算重构目前直销报单系统到微信小程序中,目前的系统只能在PC上面使用,这两年也搞过App端,但是由于人员流动和公司架构调整最后都不了了之,只留下一堆写了一半的接口.以前的接口依然是使用Asp. ...

  8. 记一次使用Asp.Net Core WebApi 5.0+Dapper+Mysql+Redis+Docker的开发过程

    #前言 我可能有三年没怎么碰C#了,目前的工作是在全职搞前端,最近有时间抽空看了一下Asp.net Core,Core版本号都到了5.0了,也越来越好用了,下面将记录一下这几天以来使用Asp.Net ...

  9. ASP.NET Core 1.0 开发记录

    官方资料: https://github.com/dotnet/core https://docs.microsoft.com/en-us/aspnet/core https://docs.micro ...

随机推荐

  1. MySQL(20):事务简介 和 事务的四个特性

    1. 事务概念引入: 现实生活中,我们往往经常会进行转账操作,转账操作可以分为两部分来完成,转入和转出.只有这两部分都完成了才可以认为是转账成功.在数据库中,这个过程是使用两条语句来完成的,如果其中任 ...

  2. Android(java)学习笔记64:线程的控制

    1. 线程休眠: Java中线程休眠指让正在运行的线程暂停执行一段时间,进入阻塞状态,通过调用Thread类的静态方法sleep得以实现. 当线程调用sleep进入阻塞状态后,在其休眠的时间内,该线程 ...

  3. 《MFC游戏开发》笔记十 游戏中的碰撞检测进阶:地图类型&障碍物判定

    本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9394465 作者:七十一雾央 新浪微博:http:// ...

  4. redis存储对象,实体类新加字段空指针问题处理

    redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set ...

  5. 解决SecureCRT中文显示乱码

    操作步骤 以下两步: 远程linux机器.修改环境变量LANG.例如在~/.bash_profile里面添加 export LANG=zh_CN.UTF8 重新登录之后生效. 现在查看一下当前设置: ...

  6. asp.net oracle 存储过程

    ORACLE代码 CREATE OR REPLACE PROCEDURE gd_CURSOR(MYCS1 OUT SYS_REFCURSOR,MYCS2 OUT SYS_REFCURSOR,a out ...

  7. 基本API-StdIn.java

    /************************************************************************* * Compilation: javac StdI ...

  8. 控制HTML元素的显示与隐藏——display和visibility

    有些时候我们需要根据某些条件来控制Web页面中的HTML元素显示还是隐藏,可以通过display或visibility来实现.通过下面的例子了解display和visibility的区别,简单的例子代 ...

  9. ionic Modal

    在ionic中,modal也是添加控制器写服务的~ 在modal.html页面中增加控制器:ng-controller="aboutCtrl"记住要给这个添加控制器.头部使其关闭按 ...

  10. 第一个过滤器Filter

    过滤器实现Filter接口javax.servlet.Filter package com.henau.example; import java.io.IOException; import java ...