ASP.NET Core行軍記---抜営出発

7619 ワード

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:3月初めからASPを見るNET Coreは、2015を利用してテストプロジェクトを構築し、すべて正常ですべてOKで、一歩一歩で何の問題もないと言えます(嬉しくてたまらない、もうすぐ天に昇るような気がします)
2:残念ながら好景は长くなくて、今周プロジェクトをRC 2に更新して、プロジェクトのパッケージは元に戻してずっと间违いを报告します:【引用(间违い-“间违いリスト”を参照します)】(落ち込んで、悲愤して、イライラして......)
3:あちこち探して、结局.NETクロスプラットフォームの旅:サンプルサイトをASP.からNET 5 RC 1はASPにアップグレードする.NET Core 1.0、望外の喜び.
4:今日dotnet restoreを利用してパッケージを更新してからまたGGしました.
 

質問?


頭が足りないんだよ,だれが私に2斤くれたんだ.
1:CR 2の後、IISまたはIIS Expressにプロジェクトをホストするにはどうすればいいですか?
2:なぜ私が2015年に右クリックで参照したのか-パッケージを復元すると、「参照(エラー-「エラーリスト」を参照)」とエラーが発生しますが、コマンドラインでdotnet restoreを使用してから正常になりました.
3:「no actions matched the current request」というエラーが発生することがあります.ルーティングは成功しましたが、要求はactionに一致しません.これは何の梗塞ですか.しかし、私がStartupを変更したとき.csファイルの後でまたできます!
   …………
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が作成したのはコンソールアプリケーションなので、すべてプログラムファイルが1つしかありません.
WEBアプリケーションを構築する必要がある場合はStartupを追加する必要がある.csファイル(上にあります)、Program.csではWebHostBuilderを利用して下宿しています.