ASP.NET Core网站初探
原文地址:https://blog.csdn.net/iml6yu/article/details/74530679
目录结构如下图
{
//以IIS Express启动
"iisSettings": {
//是否启用windows身份验证
"windowsAuthentication": false,
//是否启用匿名身份验证
"anonymousAuthentication": true,
"iisExpress": {
//IIS Express端口
"applicationUrl": "http://localhost:35617/",
"sslPort":
}
},
//运行配置项
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"WebApplication1": {
"commandName": "Project",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
//这里配置采用application方式启动时候的端口
"applicationUrl": "http://localhost:35618"
}
}
}
wwwroot:
这里放着网站的静态资源(css,image,js等),可以在StartUp.cs中通过代码允许访问wwwroot,否则wwwroot目录内的静态资源文件将无法被加载(wwwroot目录有点类型RoR中的Public目录)
依赖项:不赘述,就是引用项
Controller和Views在这里不赘述,不了解MVC的可以在网上查一下
文件:
appsettings.json
同样是顾名思义——应用配置,类似于.NET Framework上的Web.Config文件,开发者可以将系统参数通过键值对的方式写在appsettings文件中(如程序的连接字符串),
而Startup类中也在构造器中通过如下代码使得程序能够识别该文件
public Startup(IHostingEnvironment env)
{
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
.AddEnvironmentVariables();
Configuration = builder.Build();
}
bower.json
看这里吧(https://segmentfault.com/a/1190000000349555),个人认为这个配置文件很鸡肋,类似angularjs这样的都无法提示
bundleconfig.json
压缩配置文件,看下面关于site.css的配置说明,定义了输入文件和输出文件,当网站发布之后,在发布目录中存在如下两个文件,一个是压缩文件,一个是源文件
发布目标目录/wwwroot/css/
site.css 和 site.min.css
// Configure bundling and minification for the project.
// More info at https://go.microsoft.com/fwlink/?LinkId=808241
[
{
"outputFileName": "wwwroot/css/site.min.css",
// An array of relative input file paths. Globbing patterns supported
"inputFiles": [
"wwwroot/css/site.css"
]
},
{
"outputFileName": "wwwroot/js/site.min.js",
"inputFiles": [
"wwwroot/js/site.js"
],
// Optionally specify minification options
"minify": {
"enabled": true,
"renameLocals": true
},
// Optionally generate .map file
"sourceMap": false
}
]
下面说两个C#的文件吧
Program.cs,在.net项目中,这个文件再熟悉不过了,程序的main函数写在这个类中,也就是程序的入口。
Startup.cs,个人理解相当于asp.net项目中的global.aspx文件,是系统的启动全局配置文件。
下面是两个比较常用的方法
// This method gets called by the runtime. Use this method to add services to the container.
//加载服务信息,例如MVC服务
public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc();
} // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. //运行时被调用,配置路由等信息。
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug(); if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
app.UseBrowserLink();
}
else
{
app.UseExceptionHandler("/Home/Error");
} app.UseStaticFiles(); app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}
}
.NetCore 开发环境的安装与配置不再此赘述,请参考官方文档:https://www.microsoft.com/net/core#windowsvs2017
更多参考:拥抱.NET Core,如何开发跨平台的应用并部署至Ubuntu运行
ASP.NET Core网站初探的更多相关文章
- ASP.NET Core 网站发布到Linux服务器
长期以来,使用.NET开发的应用只能运行在Windows平台上面,而目前国内蓬勃发展的互联网公司由于成本的考虑,大量使用免费的Linux平台,这就使得.NET空有一身绝技但无法得到广大的施展空间,.N ...
- ASP.NET Core 网站在Docker中运行
Docker作为新一代的虚拟化方式,未来肯定会得到广泛的应用,传统虚拟机的部署方式要保证开发环境.测试环境.UAT环境.生产环境的依赖一致性,需要大量的运维人力,使用Docker我们可以实现一次部署, ...
- docker 初识之二(简单发布ASP.NET Core 网站)
在发布ASP.NET Core网站以前,先介绍一下DaoCloud 一个免费的docker云容器服务平台.登陆官方网站,创建一台docker主机,这台主机有120分钟的使用时间,对于鄙人学习使用正好合 ...
- ASP.NET Core 网站发布到Linux服务器(转)
出处;ASP.NET Core 网站发布到Linux服务器 长期以来,使用.NET开发的应用只能运行在Windows平台上面,而目前国内蓬勃发展的互联网公司由于成本的考虑,大量使用免费的Linux平台 ...
- ASP.NET CORE网站部署到 windows server 的IIS 上去
章基于我自己经验的一个总结,在windows服务器上部署asp.net core网站.环境是 windows server 2012数据中心版本 第一步先安装 IIS 服务器 接下来就是一路下一步,然 ...
- .Net Core 3 骚操作 之 用 Windows 桌面应用开发 Asp.Net Core 网站
前言 曾经在开发 Asp.Net 网站时就在想,为什么一定要把网站挂到 IIS 上?网站项目的 Main 函数哪儿去了?后来才知道这个 Main 函数在 w3wp.exe 里,这也是 IIS 的主进程 ...
- ASP.NET Core Blazor 初探之 Blazor Server
上周初步对Blazor WebAssembly进行了初步的探索(ASP.NET Core Blazor 初探之 Blazor WebAssembly).这次来看看Blazor Server该怎么玩. ...
- CENTOS7.3 64位架设使用MYSQL数据库的ASP.NET CORE网站
注:本人使用的是云服务器,具体CentOS怎么安装这里不作赘述. 网站架设效果可以查看https://www.resape.com 一.在CentOS上安装Dotnet Core环境 1.Add th ...
- asp.net.core网站重启后登陆无效问题(部署在IIS)
一.问题 在使用asp.net.core时,把网站发布到IIS后,在后续更新中需要停止网站,然后重启网站,发现已经登陆的用户会退出登陆.过程如下 1.登陆代码(测试) [AllowAnonymous] ...
随机推荐
- MonoDB的数据准备
首先是数据的录入,为了分析我们服务器集群的性能,需要准备大量的用户数据,幸运的是mtools提供了mgenerate方法供我们使用.他可以根据一个数据模版向 MongoDB 中插入任意条 json ...
- mac 苹果鼠标 magic mouse2 当触摸代替点击当触摸板教程
本文解决 mac 苹果鼠标 magic mouse2 触摸代替点击,鼠标当触摸板教程 买了magic mouse2之后,发现官方不推荐使用触摸代替点击,我感觉很不爽,这不就是一个触摸板嘛,于是各种搜软 ...
- IOCCC(The International Obfuscated C Code Contest)
国际 C 语言混乱代码大赛(IOCCC, The International Obfuscated C Code Contest)是一项国际编程赛事,从 1984 年开始,每年举办一次(1997年.1 ...
- MyBatis 作用域和生命周期
理解到目前为止所讨论的类的作用域和生命周期是非常重要的.如果使用不当可导致严重的并发性问题. SqlSessionFactoryBuilder 这个类可以在任何时候被实例化.使用和销毁.一旦您创造了 ...
- iOS 获取APP相关信息 私有API
/* Generated by RuntimeBrowser Image: /System/Library/Frameworks/MobileCoreServices.framework/Mobile ...
- nginx做负载均衡,验证码总是不对(2台服务器)
问题原因:页面中有错误链接,导致跳转到另一台服务器,验证码显示的确是刚开始访问的 (有的静态文件一边没有,就需要去另外一边找,然后就跳了.) 解决方法:把静态文件都提取到了nginx上就解决了.
- js setTimeout setInterval 第三个参数说明
1.api setTimeout: https://developer.mozilla.org/zh-CN/docs/Web/API/Window/setTimeout var timeoutID = ...
- 朴素贝叶斯分类器(Naive Bayes)
1. 贝叶斯定理 如果有两个事件,事件A和事件B.已知事件A发生的概率为p(A),事件B发生的概率为P(B),事件A发生的前提下.事件B发生的概率为p(B|A),事件B发生的前提下.事件A发生的概率为 ...
- 腾讯云ubuntu搭建jdk
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6377878.html 在购买了腾讯云ubuntu主机后,需要手动搭建java环境.安装tomcat等.ubun ...
- java LimitedThreadPool
此线程池一直增长,直到上限,增长后不收缩(因为池子里面的线程是永生的).这个keepAliveTime参数设置的为Long.MAX_VALUE,所以池子里面的线程几乎不会因为idle而被termina ...