Trong phát triển phần mềm hiện đại, định dạng YAML đã trở thành một trong những lựa chọn chính cho các tệp cấu hình. Nó được tạo ra để làm cho tuần tự hóa dữ liệu dễ đọc và ngắn gọn hơn. Trong dự án .NETCore, chúng ta có thể sử dụng tệp YAML để cấu hình các thiết lập của ứng dụng, chẳng hạn như các tùy chọn cấu hình của ứng dụng, biến môi trường, v.v. Bài viết này sẽ chỉ cho bạn cách cấu hình dự án .NETCore bằng YAML và chỉ ra cách nó hoạt động với một ví dụ đơn giản, hệ thống đặt chỗ nhà hàng nohutyemek.
Phần 1: YAML là gì?
YAML (YAMLAin'tMarkup Language) là một tiêu chuẩn tuần tự hóa dữ liệu dễ đọc và được viết ra, được sử dụng rộng rãi trong các tệp cấu hình và trao đổi dữ liệu. Nó hỗ trợ cấu trúc lồng nhau của các cặp khóa-giá trị, danh sách và đối tượng để tổ chức dữ liệu rõ ràng hơn. Trong .NETCore, chúng ta có thể sử dụng gói Microsoft.Extensions.Configuration để phân tích cú pháp các tệp YAML.
2. Chuẩn bị môi trường phát triển
Trước khi bạn bắt đầu, hãy chắc chắn rằng bạn đã cài đặt nó. NETCoreSDK và môi trường phát triển tương ứng. Bạn có thể tải xuống và cài đặt phiên bản mới nhất của .NETCore SDK từ trang web chính thức của Microsoft.
3. Tạo. Dự án NETCore
Chạy lệnh sau trong dòng lệnh để tạo tệp . Dự án NETCoreWebAPI:
''Ầm ầm
dotnetnew-nnohut-yemek-api
CDNOHUT-Yemek-API
```
4. Thêm hỗ trợ cấu hình YAML
Thêm phần phụ thuộc vào 'Microsoft.Extensions.Configuration trong dự án của bạn để giải quyết tệp YAML. Chỉnh sửa tệp nohut-yemek-api.csproj
và thêm các phụ thuộc sau vào tab:
''xml
```
5. Tạo tệp cấu hình YAML
Tạo một tệp có tên appsettings.yaml ở thư mục gốc của dự án để lưu trữ thông tin cấu hình của ứng dụng. Chẳng hạn:
''Yaml
Tiệm ăn:
Tên:nohutyemek
Địa chỉ:No.123Street,CityCenter
Đặt chỗ:
Tối đaTablesPerDay:50
BookingTimeSlotThời lượng:30minutesperslot
```
6. Đọc thông tin cấu hình YAML
Tạo appsettings trong dự án của bạn. Development.json' (cho môi trường phát triển) và thêm nội dung sau vào đó:
''JSON
{
"Ghi nhật ký":{
"LogLevel":{
"Mặc định":"Thông tin",
"Microsoft":"Cảnh báo",
"Microsoft.Hosting.Lifetime":"Thông tin"
}
},
ConnectionStrings: {/Yourconnectionstringshere/}, //optional, thêm thông tin cấu hình như chuỗi kết nối cơ sở dữ liệu theo yêu cầu của bạn.
"AllowedHosts":""//Tùy chọn, đặt danh sách các máy chủ được phép theo nhu cầu của bạn. Trong môi trường phát triển, đặt thành "" có nghĩa là tất cả các máy chủ đều được phép truy cập. Trong môi trường sản xuất, hãy đặt một tên miền hoặc địa chỉ IP cụ thể. "allowedHosts":["localhost","example.com"]} có thể được sử dụng để chỉ định danh sách các máy chủ được phép. Trong môi trường sản xuất, hãy đảm bảo chỉ bao gồm tên máy chủ hoặc địa chỉ IP thực tế. 7. Sử dụng thông tin cấu hình để sử dụng thông tin cấu hình đọc trong ứng dụng. Bạn có thể đưa một instance của giao diện IConfiguration vào lớp startup hoặc bất kỳ lớp nào yêu cầu thông tin cấu hình, sau đó truy cập thông tin cấu hình thông qua instance đó. Ví dụ: tiêm và sử dụng thông tin cấu hình trong lớp Khởi động: publicclassStartup{publicStartup(IConfigurationconfiguration){Configuration=configuration;}} }publicIConfigurationConfiguration{get; }//... Trong phương pháp ConfigureServices, bạn có thể sử dụng thuộc tính Configuration để truy cập thông tin cấu hình và áp dụng nó cho container dependency injection: publicvoidConfigureServices(IServiceCollectionservices){//... Đăng ký dịch vụ. AddSingleton (Cấu hình); Đăng ký phiên bản chung của phiên bản Cấu hình (nếu cần) // Ví dụ: services. AddSingleton (Cấu hình); //... Đăng ký dịch vụ khác} Giờ đây, bạn có thể sử dụng dependency injection ở bất kỳ đâu trong ứng dụng của mình để lấy thông tin cấu hình. 8. Kiểm tra và gỡ lỗiBây giờ ứng dụng của bạn đã được cấu hình với tệp YAML, bạn có thể khởi động ứng dụng và kiểm tra xem nó có đọc và sử dụng thông tin cấu hình chính xác hay không. Bạn có thể xác minh rằng nó hoạt động như mong đợi bằng cách ghi nhật ký hoặc bằng cách in thông tin cấu hình trực tiếp trong mã của bạn. 9. Cấu hình các dự án .NETCore thông qua tệp YAML là một cách mạnh mẽ để làm cho dự án của bạn trở nên mô-đun và có thể mở rộng hơn. Bạn có thể sử dụng cùng một tệp cấu hình để chuyển đổi thông tin cấu hình giữa các môi trường khác nhau (ví dụ: phát triển và sản xuất). Bằng cách này, bạn có thể dễ dàng quản lý các tùy chọn cấu hình và biến môi trường của ứng dụng, cải thiện hiệu quả phát triển và khả năng bảo trì. 10. Phụ lục (Tùy chọn) Nếu bạn gặp bất kỳ câu hỏi nào hoặc cần hỗ trợ thêm, vui lòng xem lại các tài nguyên sau: giới thiệu và hướng dẫn sử dụng cho hệ thống cấu hình .NETCore trong tài liệu chính thức của Microsoft, Câu hỏi thường gặp và thảo luận về cấu hình .NETCore trong cộng đồng StackOverflow, hướng dẫn và mã mẫu trên các cộng đồng nhà phát triển và trang web tài nguyên khác. Hy vọng bài viết này đã giúp bạn hiểu cách cấu hình một dự án .NETCore bằng YAML và áp dụng thành công nó trong dự án của bạn. Tôi chúc bạn mọi điều tốt đẹp nhất trong quá trình phát triển của mình!