找到 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 可以单独用作边缘服务器,即可以直接处理来自客户端的传入 HTTP 请求的面向 Internet 的 Web 服务器。在 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+ 次浏览
Session 是 ASP.NET Core 中的一个特性,它允许我们保存/存储用户数据。Session 将数据存储在服务器上的字典中,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 来选择是否处理请求。如果... 阅读更多
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP