找到 2628 篇文章 关于 C#
1K+ 阅读量
ASP.NET Core Web 应用程序实际上是一个控制台项目,从 Program 类中的入口点 public static void Main() 开始执行,在这里我们可以为 Web 应用程序创建一个主机。public class Program{ public static void Main(string[] args){ BuildWebHost(args).Run(); } public static IWebHost BuildWebHost(string[] args) => WebHost.CreateDefaultBuilder(args) .UseStartup() .Build(); }WebHost 是一个静态类,可用于创建具有预配置默认值的 IWebHost 和 IWebHostBuilder 实例。CreateDefaultBuilder() 方法创建 WebHostBuilder 的一个新实例,并具有预配置的默认值。在内部,它配置 Kestrel、IISIntegration 和其他配置。 ... 阅读更多
2K+ 阅读量
所有 ASP.NET Core 应用程序都需要一个 WebHost 对象,它本质上充当应用程序和 Web 服务器。WebHostBuilder 用于配置和创建 WebHost。通常会在 WebHostBuilder 设置代码中看到 UseKestrel() 和 UseIISIntegration()。它们的作用是什么?UseKestrel() - 将 IServer 接口注册为 Kestrel 作为服务器,用于托管应用程序。将来,可能会有其他选项,包括仅限 Windows 的 WebListener。UseIISIntegration() - 这告诉 ASP.NET IIS 将作为 Kestrel 前面的反向代理工作。然后,它指定有关 Kestrel 应该... 阅读更多
5K+ 阅读量
IWebHostEnvironment 提供有关应用程序正在运行的 Web 托管环境的信息。属于命名空间 Microsoft.AspNetCore.HostingIWebHostEnvironment 接口需要作为依赖项注入控制器,然后在整个控制器中使用。IWebHostEnvironment 接口有两个属性。WebRootPath - www 文件夹的路径(获取或设置包含 Web 可服务应用程序内容文件的目录的绝对路径)ContentRootPath - 包含所有应用程序文件的根文件夹的路径(获取或设置指向 WebRootPath 的 IFileProvider。)用法我们需要导入命名空间using Microsoft.AspNetCore.Hosting;在下面的示例中,IWebHostEnvironment 注入到控制器中并分配给私有属性... 阅读更多
3K+ 阅读量
Kestrel 是 ASP.NET Core 的跨平台 Web 服务器。它在 .NET Core 支持的所有平台和版本上都受支持。它默认包含在 ASP.NET Core 中作为内部服务器。Kestrel 可以独立用作边缘服务器,即面向 Internet 的 Web 服务器,可以直接处理来自客户端的传入 HTTP 请求。在 Kestrel 中,用于托管应用程序的进程是 dotnet.exe。Kestrel 不与 InProcess 托管模型一起使用。使用 Out of Process 托管模型,Kestrel 可以通过以下两种方式之一使用。Kestrel 可以用作面向 Internet 的 Web 服务器Kestrel 可以... 阅读更多
998 阅读量
HttpModules 通过 web.config 或 global.asax 配置开发人员无法控制执行顺序。因为模块的顺序主要基于应用程序生命周期事件。请求和响应的执行顺序保持相同。HttpModules 帮助您将特定于应用程序事件的代码附加到应用程序事件。HttpModules 绑定到 System.web。中间件在 Startup.cs 代码中配置,而不是 web.config 文件(应用程序的入口点)与 HttpModules 不同,可以完全控制执行什么以及执行顺序。因为它们按添加顺序执行。响应的中介件顺序与请求的相反。中间件是... 阅读更多
555 阅读量
内置 IoC 容器管理已注册服务类型的生命周期。它会根据指定的生命周期自动处置服务实例。内置 IoC 容器支持三种生命周期-Singleton - IoC 容器将在整个应用程序生命周期中创建和共享服务的单个实例。Transient - 每次请求时,IoC 容器都会创建指定服务类型的新实例。Scoped - IoC 容器将为每个请求创建指定服务类型的一个实例,并在单个请求中共享。示例public interface ILog{ void info(string str); } class MyConsoleLogger ... 阅读更多
1K+ 阅读量
ASP.NET Core 通过构造函数或方法使用内置 IoC 容器注入依赖类对象。内置容器由 IServiceProvider 实现表示,默认支持构造函数注入。由内置 IoC 容器管理的类型(类)称为服务。为了让 IoC 容器自动注入我们的应用程序服务,我们首先需要将它们注册到 IoC 容器中。示例public interface ILog{ void info(string str); } class MyConsoleLogger : ILog{ public void info(string str){ Console.WriteLine(str); } }ASP.NET Core 允许我们使用 IoC 容器注册我们的应用程序服务,在... 阅读更多
6K+ 阅读量
ASP.net Core 从先前版本的 ASP.net 重新架构,其中配置依赖于 System.Configuration 和 web.config 文件中的 xml 配置。在 ASP.net Core 中,一种新的简单方法来声明和访问解决方案的全局设置、项目特定设置、客户端特定设置等。新的配置模型适用于 XML、INI 和 JSON 文件。ASP.net Core 中不同的配置 json 文件ASP.net Core 中主要有 6 个配置 JSON 文件。global.json launchsettings.json appsettings.json bundleconfig.json project.json bower.jsonglobal.json示例您可以在 global.json 文件中定义解决方案级设置。{ "projects": [ "src", "test" ], "sdk": { "version": "1.0.0-preview2-003121" ... 阅读更多
17K+ 阅读量
会话是 ASP.NET Core 中的一项功能,使我们能够保存/存储用户数据。会话将数据存储在服务器上的字典中,并使用 SessionId 作为键。SessionId 存储在客户端的 cookie 中。SessionId cookie 会随每个请求一起发送。SessionId cookie 针对每个浏览器,不能在浏览器之间共享。SessionId cookie 没有指定超时时间,并且在浏览器会话结束时会被删除。在服务器端,会话会保留一段时间。服务器上的默认会话超时时间为 20 分钟,但... 阅读更多
4K+ 阅读量
路由用于将请求映射到路由处理程序。路由在应用程序启动时配置,并且可以从 URL 中提取用于请求处理的值。路由基础知识路由使用路由(IRouter 的实现)将传入请求映射到路由处理程序生成响应中使用的 URL路由通过 RouterMiddleware 类连接到中间件管道。ASP.NET MVC 在其配置的一部分中将路由添加到中间件管道URL 匹配传入请求进入 RouterMiddleware,后者按顺序调用每个路由上的 RouteAsync 方法。IRouter 实例通过将 RouteContext Handler 设置为非空 RequestDelegate 来选择是否处理请求。如果 ... 阅读更多
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP