NetCore项目和以前的AspNet项目在部署上有很大的不同,因为NetCore是跨平台的
NetCore支持Kestrel和IIS两种方式,看代码的11行和14行
1 using System.IO; 2 using Microsoft.AspNetCore.Hosting; 3 4 namespace Ocean.Web.Startup 5 { 6 public class Program 7 { 8 public static void Main(string[] args) 9 { 10 var host = new WebHostBuilder() 11 .UseKestrel() 12 .UseUrls("http://localhost:8097") 13 .UseContentRoot(Directory.GetCurrentDirectory()) 14 .UseIISIntegration() 15 .UseStartup<Startup>() 16 .Build(); 17 18 host.Run(); 19 } 20 } 21 }
前提:下载安装自己系统对应的Runtime和SDK,还有Windows Server Hosting
下载网址 https://www.microsoft.com/net/download/core#/runtime
安装完成后cmd输入dotnet --version,如果显示版本则安装成功
1、Kestrel方式运行NetCore项目
找到NetCore的Web根目录,按住shift键右击鼠标,选择在此处打开命令窗口,输入dotnet run
如果不报错则打开浏览器输入对应的侦听端口即可访问你的应用程序
看上面的代码12行,我们可以自定义侦听端口
2、IIS部署NetCore项目
首先,先发布你的NetCore项目
点击发布,然后选择你的文件路径,他其他发布信息
发布之后你会发现发布后的文件和以前的AspNet发布包完全不一样
其次,打开IIS,创建应用程序池,.Net Framework版本选择无托管代码
再次,添加网站,选择刚才创建的应用程序池,选择发布文件路径,点击确定OK
抱歉,写的有点乱