通用主机如何挂载aspnetcore
2020-02-07 17:00:03 0 举报
AI智能生成
登录查看完整内容
源码浅析 通用主机如何挂载AspnetCore
作者其他创作
大纲/内容
通用主机如何挂载aspnetcore
继承自IHostEnvironment
GenericWebHostedService
GenericWebHostServiceOptions
Action<IApplicationBuilder> ConfigureApplication { get; set; }
WebHostOptions WebHostOptions { get; set; }
AggregateException HostingStartupExceptions { get; set; }
IServer
IFeatureCollection
bool IsReadOnly
int Revision
object this[Type key]
TFeature Get<TFeature>()
void Set<TFeature>(TFeature instance)
ILoggerFactory
DiagnosticListener
IHttpContextFactory
HttpContext Create(IFeatureCollection featureCollection)
void Dispose(HttpContext httpContext)
IApplicationBuilderFactory
IApplicationBuilder CreateBuilder(IFeatureCollection serverFeatures);
IApplicationBuilder
IServiceProvider ApplicationServices { get; set; }
IFeatureCollection ServerFeatures
IApplicationBuilder New()
RequestDelegate Build()
IEnumerable<IStartupFilter>
IConfiguration
IWebHostEnvironment
string WebRootPath { get; set; }
IFileProvider WebRootFileProvider { get; set; }
string EnvironmentName { get; set; }
string ApplicationName { get; set; }
string WebRootPath { get; set; }
IFileProvider WebRootFileProvider { get; set; }
string ContentRootPath { get; set; }
IFileProvider ContentRootFileProvider { get; set; }
public async Task StartAsync(CancellationToken cancellationToken)
public async Task StopAsync(CancellationToken cancellationToken)
await Server.StopAsync(cancellationToken);
GenericWebHostBuilder
构造:public GenericWebHostBuilder(IHostBuilder builder)
_builder = builder;
_config = new ConfigurationBuilder() .AddEnvironmentVariables(prefix: \"ASPNETCORE_\") .Build();
_builder.ConfigureHostConfiguration(config =>
ExecuteHostingStartups();
config.AddConfiguration(_config);
var webhostContext = GetWebHostBuilderContext(context);
var webHostOptions = (WebHostOptions)context.Properties[typeof(WebHostOptions)];
services.AddSingleton(webhostContext.HostingEnvironment);
services.Configure<GenericWebHostServiceOptions>(options =>
options.WebHostOptions = webHostOptions;
options.HostingStartupExceptions = _hostingStartupErrors;
Support UseStartup(assemblyName)
Private ExecuteHostingStartups()
public IWebHostBuilder ConfigureServices(Action<IServiceCollection> configureServices)
public IWebHostBuilder UseStartup(Type startupType)
public string GetSetting(string key
WebHostOptions
public string ApplicationName { get; set; }
public bool PreventHostingStartup { get; set; }
public bool SuppressStatusMessages { get; set; }
public IReadOnlyList<string> HostingStartupAssemblies { get; set; }
public IReadOnlyList<string> HostingStartupExcludeAssemblies { get; set; }
public bool DetailedErrors { get; set; }
public bool CaptureStartupErrors { get; set; }
public string Environment { get; set; }
public string StartupAssembly { get; set; }
public string WebRoot { get; set; }
public string ContentRootPath { get; set; }
public TimeSpan ShutdownTimeout { get; set; } = TimeSpan.FromSeconds(5);
public IEnumerable<string> GetFinalHostingStartupAssemblies()
收藏
0 条评论
回复 删除
下一页