Đây là một phương pháp mở rộng đơn giản cho một Hướng dẫn vô hiệu.
/// <summary>
/// Determines if a nullable Guid (Guid?) is null or Guid.Empty
/// </summary>
public static bool IsNullOrEmpty(this Guid? guid)
{
return (!guid.HasValue || guid.Value == Guid.Empty);
}
CẬP NHẬT
Nếu bạn thực sự muốn sử dụng nó ở mọi nơi, bạn có thể viết một phương thức mở rộng khác cho một Hướng dẫn thông thường. Nó không bao giờ có thể rỗng, vì vậy một số người sẽ không thích điều này ... nhưng nó phục vụ mục đích bạn đang tìm kiếm và bạn không cần phải biết liệu bạn có đang làm việc với Guid không? hoặc Hướng dẫn (tốt cho việc tính toán lại, v.v.).
/// <summary>
/// Determines if Guid is Guid.Empty
/// </summary>
public static bool IsNullOrEmpty(this Guid guid)
{
return (guid == Guid.Empty);
}
Bây giờ bạn có thể sử dụng someGuid.IsNullOrEmpty();
trong mọi trường hợp, cho dù bạn đang sử dụng Guid hay Guid ?.
Như tôi đã nói, một số người sẽ phàn nàn về cách đặt tên vì IsNullOrEmpty()
ngụ ý rằng giá trị có thể là null (khi nó không thể). Nếu bạn thực sự muốn, đưa ra một cái tên khác cho các phần mở rộng như IsNothing()
hoặc IsInsignificant()
hoặc bất cứ điều gì :)
Guid.Empty