找到 2628 篇文章 关于 C#

C# ASP.NET Core 项目中 Program.cs 文件的作用是什么?

Nizamuddin Siddiqui
更新于 2020-09-25 10:50:45

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 和其他配置。 ... 阅读更多

C# Asp.net Core 中 UseIISIntegration 的作用是什么?

Nizamuddin Siddiqui
更新于 2020-09-25 10:49:24

2K+ 阅读量

所有 ASP.NET Core 应用程序都需要一个 WebHost 对象,它本质上充当应用程序和 Web 服务器。WebHostBuilder 用于配置和创建 WebHost。通常会在 WebHostBuilder 设置代码中看到 UseKestrel() 和 UseIISIntegration()。它们的作用是什么?UseKestrel() - 将 IServer 接口注册为 Kestrel 作为服务器,用于托管应用程序。将来,可能会有其他选项,包括仅限 Windows 的 WebListener。UseIISIntegration() - 这告诉 ASP.NET IIS 将作为 Kestrel 前面的反向代理工作。然后,它指定有关 Kestrel 应该... 阅读更多

C# ASP.NET Core 中 IWebHostEnvironment 接口的作用是什么?

Nizamuddin Siddiqui
更新于 2020-09-25 10:46:15

5K+ 阅读量

IWebHostEnvironment 提供有关应用程序正在运行的 Web 托管环境的信息。属于命名空间 Microsoft.AspNetCore.HostingIWebHostEnvironment 接口需要作为依赖项注入控制器,然后在整个控制器中使用。IWebHostEnvironment 接口有两个属性。WebRootPath - www 文件夹的路径(获取或设置包含 Web 可服务应用程序内容文件的目录的绝对路径)ContentRootPath - 包含所有应用程序文件的根文件夹的路径(获取或设置指向 WebRootPath 的 IFileProvider。)用法我们需要导入命名空间using Microsoft.AspNetCore.Hosting;在下面的示例中,IWebHostEnvironment 注入到控制器中并分配给私有属性... 阅读更多

什么是 Kestral C# Asp.net Core?

Nizamuddin Siddiqui
更新于 2020-09-25 10:44:47

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 可以... 阅读更多

C# ASP.NET Core 中间件与 HttpModule 有什么区别?

Nizamuddin Siddiqui
更新于 2020-09-25 10:43:56

998 阅读量

HttpModules 通过 web.config 或 global.asax 配置开发人员无法控制执行顺序。因为模块的顺序主要基于应用程序生命周期事件。请求和响应的执行顺序保持相同。HttpModules 帮助您将特定于应用程序事件的代码附加到应用程序事件。HttpModules 绑定到 System.web。中间件在 Startup.cs 代码中配置,而不是 web.config 文件(应用程序的入口点)与 HttpModules 不同,可以完全控制执行什么以及执行顺序。因为它们按添加顺序执行。响应的中介件顺序与请求的相反。中间件是... 阅读更多

如何为作为依赖项添加的服务注册指定服务生命周期 C# Asp.net Core?

Nizamuddin Siddiqui
更新于 2020-09-25 10:41:49

555 阅读量

内置 IoC 容器管理已注册服务类型的生命周期。它会根据指定的生命周期自动处置服务实例。内置 IoC 容器支持三种生命周期-Singleton - IoC 容器将在整个应用程序生命周期中创建和共享服务的单个实例。Transient - 每次请求时,IoC 容器都会创建指定服务类型的新实例。Scoped - IoC 容器将为每个请求创建指定服务类型的一个实例,并在单个请求中共享。示例public interface ILog{    void info(string str); } class MyConsoleLogger ... 阅读更多

我们如何将服务依赖项注入到 C# Asp.net Core 的控制器中?

Nizamuddin Siddiqui
更新于 2020-09-25 10:39:25

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 容器注册我们的应用程序服务,在... 阅读更多

C# ASP.NET Core 中有哪些 JSON 文件?

Nizamuddin Siddiqui
更新于 2020-09-25 10:37:56

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"   ... 阅读更多

如何在 C# ASP.NET Core 中启用会话?

Nizamuddin Siddiqui
更新于 2020-09-24 13:14:50

17K+ 阅读量

会话是 ASP.NET Core 中的一项功能,使我们能够保存/存储用户数据。会话将数据存储在服务器上的字典中,并使用 SessionId 作为键。SessionId 存储在客户端的 cookie 中。SessionId cookie 会随每个请求一起发送。SessionId cookie 针对每个浏览器,不能在浏览器之间共享。SessionId cookie 没有指定超时时间,并且在浏览器会话结束时会被删除。在服务器端,会话会保留一段时间。服务器上的默认会话超时时间为 20 分钟,但... 阅读更多

什么是 C# ASP.NET Core 中的路由?

Nizamuddin Siddiqui
更新于 2020-09-24 13:13:10

4K+ 阅读量

路由用于将请求映射到路由处理程序。路由在应用程序启动时配置,并且可以从 URL 中提取用于请求处理的值。路由基础知识路由使用路由(IRouter 的实现)将传入请求映射到路由处理程序生成响应中使用的 URL路由通过 RouterMiddleware 类连接到中间件管道。ASP.NET MVC 在其配置的一部分中将路由添加到中间件管道URL 匹配传入请求进入 RouterMiddleware,后者按顺序调用每个路由上的 RouteAsync 方法。IRouter 实例通过将 RouteContext Handler 设置为非空 RequestDelegate 来选择是否处理请求。如果 ... 阅读更多

广告