ASP.NET Core 小应用 on Ubuntu 16.04

本文介绍如何在Ubuntu 16.04上使用ASP.NET Core创建并运行一个简单的Web应用程序。主要内容包括设置开发环境、创建.NET Core项目、配置依赖项、编写启动代码以及启动应用程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ASP.NET Core

开发环境 Ubuntu 16.04

1.创建一个新的 .NET Core 工程

upir@upir-Rev-1-0:~$ mkdir myweb
upir@upir-Rev-1-0:~$ cd myweb
upir@upir-Rev-1-0:~/myweb$ dotnet new
Created new C# project in /home/upir/myweb.
upir@upir-Rev-1-0:~/myweb$ ls
Program.cs  project.json

2.更新 project.json 文件,添加 Kestrel HTTP server 包

{
  "version": "1.0.0-*",
  "buildOptions": {
    "debugType": "portable",
    "emitEntryPoint": true
  },
  "dependencies": {},
  "frameworks": {
    "netcoreapp1.0": {
      "dependencies": {
        "Microsoft.NETCore.App": {
          "type": "platform",
          "version": "1.0.0"
        },
        "Microsoft.AspNetCore.Server.Kestrel": "1.0.0"
      },
      "imports": "dnxcore50"
    }
  }
}

3.更新依赖包

upir@upir-Rev-1-0:~/myweb$ dotnet restore
log  : Restoring packages for /home/upir/myweb/project.json...
log  : Installing System.Text.Encodings.Web 4.0.0.
log  : Installing System.Net.WebSockets 4.0.0.
log  : Installing Microsoft.AspNetCore.Http.Abstractions 1.0.0.
log  : Installing Microsoft.AspNetCore.Server.Kestrel 1.0.0.
log  : Installing Microsoft.AspNetCore.WebUtilities 1.0.0.
log  : Installing Microsoft.Extensions.ObjectPool 1.0.0.
log  : Installing Microsoft.Net.Http.Headers 1.0.0.
log  : Installing Microsoft.AspNetCore.Http.Features 1.0.0.
log  : Installing Microsoft.Extensions.Configuration.Abstractions 1.0.0.
log  : Installing Microsoft.Extensions.Primitives 1.0.0.
log  : Installing Microsoft.Extensions.FileProviders.Abstractions 1.0.0.
log  : Installing Microsoft.Extensions.FileSystemGlobbing 1.0.0.
log  : Installing Microsoft.Extensions.DependencyInjection.Abstractions 1.0.0.
log  : Installing Microsoft.AspNetCore.Hosting.Abstractions 1.0.0.
log  : Installing Microsoft.AspNetCore.Http.Extensions 1.0.0.
log  : Installing Microsoft.Extensions.Logging.Abstractions 1.0.0.
log  : Installing Microsoft.AspNetCore.Http 1.0.0.
log  : Installing Microsoft.AspNetCore.Hosting.Server.Abstractions 1.0.0.
log  : Installing Microsoft.AspNetCore.Hosting 1.0.0.
log  : Installing Microsoft.Extensions.Configuration.EnvironmentVariables 1.0.0.
log  : Installing Microsoft.Extensions.PlatformAbstractions 1.0.0.
log  : Installing Microsoft.Extensions.Logging 1.0.0.
log  : Installing Microsoft.Extensions.DependencyInjection 1.0.0.
log  : Installing Microsoft.Extensions.FileProviders.Physical 1.0.0.
log  : Installing Microsoft.Extensions.Options 1.0.0.
log  : Installing Microsoft.Extensions.Configuration 1.0.0.
log  : Writing lock file to disk. Path: /home/upir/myweb/project.lock.json
log  : /home/upir/myweb/project.json
log  : Restore completed in 84740ms.

4.添加 Startup.cs 文件

using System;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;

namespace aspnetcoreapp
{
    public class Startup
    {
        public void Configure(IApplicationBuilder app)
        {
            app.Run(context =>
            {
                return context.Response.WriteAsync("Hello from ASP.NET Core on Ubuntu 16.04");
            });
        }
    }
}

5.更改 Program.cs 文件

using System;
using Microsoft.AspNetCore.Hosting;

namespace aspnetcoreapp
{
    public class Program
    {
        public static void Main(string[] args)
        {
            //Console.WriteLine("Hello World!");
            var host = new WebHostBuilder()
                .UseKestrel()
                .UseStartup<Startup>()
                .Build();

            host.Run();
        }
    }
}

6.启动应用

upir@upir-Rev-1-0:~/myweb$ tree
.
├── bin
│   └── Debug
│       └── netcoreapp1.0
│           ├── myweb.deps.json
│           ├── myweb.dll
│           ├── myweb.pdb
│           ├── myweb.runtimeconfig.dev.json
│           └── myweb.runtimeconfig.json
├── obj
│   └── Debug
│       └── netcoreapp1.0
│           ├── dotnet-compile.assemblyinfo.cs
│           ├── dotnet-compile-csc.rsp
│           └── dotnet-compile.rsp
├── Program.cs
├── project.json
├── project.lock.json
└── Startup.cs

6 directories, 12 files
upir@upir-Rev-1-0:~/myweb$ dotnet run
Project myweb (.NETCoreApp,Version=v1.0) will be compiled because expected outputs are missing
Compiling myweb for .NETCoreApp,Version=v1.0

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

Time elapsed 00:00:03.6667426
 

Hosting environment: Production
Content root path: /home/upir/myweb/bin/Debug/netcoreapp1.0
Now listening on: http://localhost:5000
Application started. Press Ctrl+C to shut down.

预览:

转载于:https://my.oschina.net/webcreazy/blog/710042

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值