tôi đang làm việc trên một dự án mà tôi tìm thấy tôi đang kiểm tra sau trong nhiều, nhiều nơi:loại Nullable: Cách tốt nhất để kiểm tra null hoặc không có trong C#
hơnif(item.Rate == 0 || item.Rate == null) { }
như một sự tò mò hơn bất cứ điều gì, cách tốt nhất để kiểm tra cả hai trường hợp là gì?
Tôi đã thêm một phương pháp helper đó là:
public static bool nz(object obj)
{
var parsedInt = 0;
var parsed = int.TryParse(obj.ToString(), out parsedInt);
return IsNull(obj) || (parsed && parsedInt == 0);
}
Có cách nào tốt hơn?
Điều làm đẹp. – Patrick
cảm ơn bạn - rất ngắn gọn! tôi đã quan tâm đến khả năng đọc, nhưng đi đến kết luận rằng nó sẽ là hoàn toàn có thể đọc được tôi thực sự hiểu được ?? nhà điều hành. – nailitdown
Bạn nên sử dụng phương pháp mở rộng; trong khi nó có thể đọc được tại thời điểm viết, mã nhỏ này đòi hỏi một phần tư tưởng, có nghĩa là nếu bạn cố gắng đọc mã và nó sử dụng nó - bạn bị phân tâm khỏi vấn đề chính của bạn. – configurator