在C#中,使用屬性(Properties)可以實現get和set方法的數據驗證。以下是一個簡單的示例,展示了如何在屬性中使用數據驗證:
using System;
public class Person
{
private string _name;
public string Name
{
get { return _name; }
set
{
if (!string.IsNullOrEmpty(value))
{
_name = value;
}
else
{
throw new ArgumentException("Name cannot be null or empty.");
}
}
}
}
class Program
{
static void Main(string[] args)
{
Person person = new Person();
try
{
person.Name = "John Doe";
Console.WriteLine($"Name: {person.Name}");
// 以下代碼將引發異常,因為名稱為空
person.Name = "";
}
catch (ArgumentException ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
在這個示例中,我們創建了一個名為Person
的類,其中包含一個名為Name
的屬性。在Name
屬性的set方法中,我們進行了數據驗證,確保名稱不為空或null。如果名稱為空或null,我們拋出一個ArgumentException
異常。
在Main
方法中,我們創建了一個Person
對象,并嘗試為其Name
屬性設置一個值。如果值有效,我們將輸出名稱;如果值無效(為空或null),我們將捕獲并輸出異常信息。