Sự khác biệt giữa @bind và @bind-value trong Blazor
Trong Blazor, cơ chế liên kết dữ liệu hai chiều được hỗ trợ qua hai chỉ thị chính: @bind và @bind-value. Mặc dù cả hai đều đạt mục tiêu chung là đồng bộ hóa giá trị giữa giao diện người dùng và mô hình dữ liệu, cách thức triển khai và phạm vi linh hoạt lại khác biệt rõ rệt.
1. @bind — Cú pháp rút gọn cho trường hợp phổ biến
Đây là cú pháp đượ ...
Đăng vào ngày 1 tháng 7 lúc 03:43
Triển khai Ứng dụng .NET Core bằng Docker Compose
Để bắt đầu, hãy tạo một dự án Web API mới và cấu hình nó để hỗ trợ Docker.
Thêm việc đọc các biến môi trường vào cấu hình:
config.AddEnvironmentVariables();
using DemoApi;
var builder = WebApplication.CreateBuilder(args);
builder.WebHost.ConfigureAppConfiguration(config =>
{
config.AddEnvironmentVariables();
});
// Thêm các dịch vụ vào ...
Đăng vào ngày 28 tháng 6 lúc 21:01
Kết hợp Runtime Library và Source Generator trong một gói NuGet duy nhất
Các thư viện phổ biến như CommunityToolkit.Mvvm cung cấp một trải nghiệm lập trình mượt mà bằng cách vừa cung cấp các API để gọi trực tiếp, vừa tự động sinh mã nguồn thông qua Source Generator. Thực tế, cơ chế này không nằm trong một dự án duy nhất mà là sự kết hợp của hai thành phần riêng biệt được đóng gói chung vào một tệp NuGet.
Cấu trúc g ...
Đăng vào ngày 25 tháng 5 lúc 10:27
Triển khai các phép nối dữ liệu Inner, Left và Right bằng LINQ trong C#
Trong quá trình phát triển ứng dụng .NET, việc tổng hợp dữ liệu từ nhiều collection khác nhau là một yêu cầu phổ biến. LINQ (Language Integrated Query) cung cấp các toán tử mạnh mẽ để thực hiện các phép nối tương tự như cấu trúc SQL ngay trên mã nguồn C#. Bài viết này sẽ hướng dẫn cách thực hiện Inner Join, Left Join và Right Join sử dụng cả cú ...
Đăng vào ngày 23 tháng 5 lúc 20:36
Triển khai gRPC trong .NET: Xử lý Yêu cầu và Dòng Dữ liệu
Cấu trúc Protocol Buffer cơ bản
Để sử dụng kiểu dữ liệu rỗng, cần khai báo thư viện:
import "google/protobuf/empty.proto";
Kiểu dữ liệu rỗng được định nghĩa là google.protobuf.Empty. Với mảng, sử dụng từ khóa repeated.
Mẫu tệp .proto tiêu chuẩn
syntax = "proto3";
option csharp_namespace = "UserManagementService";
package usermgmt;
import "goo ...
Đăng vào ngày 19 tháng 5 lúc 17:15