Computer >> Máy Tính >  >> Lập trình >> C#

Mục đích của tệp Program.cs trong dự án C # ASP.NET Core là gì?

Ứng dụng web ASP.NET Core thực sự là một dự án bảng điều khiển bắt đầu thực thi từ điểm nhập public static void Main () trong lớp Chương trình, nơi chúng ta có thể tạo một máy chủ cho ứng dụng web.

public class Program{
   public static void Main(string[] args){
      BuildWebHost(args).Run();
   }
   public static IWebHost BuildWebHost(string[] args) =>
   WebHost.CreateDefaultBuilder(args)
   .UseStartup<startup>()
   .Build();
}

WebHost là một lớp tĩnh có thể được sử dụng để tạo một phiên bản của IWebHost và IWebHostBuilder với các giá trị mặc định được định cấu hình trước.

CreateDefaultBuilder () phương thức tạo một phiên bản mới của WebHostBuilder với các giá trị mặc định được định cấu hình trước. Trong nội bộ,

nó cấu hình Kestrel, IISIntegration và các cấu hình khác. Phương thức isCreateDefaultBuilder () sau đây.

  • Đặt “Gốc nội dung” làm thư mục hiện tại
  • Cho phép đẩy các args Dòng lệnh vào đối tượng cấu hình của bạn
  • Thêm cả appsettings.json và appsettings. {Môi trường} .json sẽ được tải vào đối tượng cấu hình
  • Thêm các biến môi trường vào đối tượng cấu hình
  • Nếu đang trong giai đoạn Phát triển, hãy cho phép tải các bí mật.
  • Thêm Bảng điều khiển / Trình ghi gỡ lỗi
  • Yêu cầu ứng dụng sử dụng Kestrel và tải cấu hình Kestrel từ loadconfig
  • Thêm định tuyến
  • Thêm Tích hợp IIS

Khi chúng tôi muốn lưu trữ ứng dụng của mình vào iis, chúng tôi cần thêm UseIISIntegration () chỉ định IIS làm máy chủ web bên ngoài.

UseStartup () phương thức chỉ định lớp Khởi động sẽ được sử dụng bởi máy chủ web. chúng tôi cũng có thể chỉ định lớp tùy chỉnh của mình ở vị trí khởi động.

Xây dựng () phương thức trả về một phiên bản của IWebHost và Run () khởi động ứng dụng web cho đến khi nó dừng lại.