温馨提示×

c#构造类能用于数据验证吗

c#
小樊
82
2024-10-18 19:11:31
栏目: 编程语言

是的,C#中的构造函数可以用于数据验证。在构造函数中,您可以检查传入的参数是否符合预期的要求,并在参数不符合要求时抛出异常或采取其他适当的操作。

以下是一个简单的示例,演示了如何在C#类的构造函数中进行数据验证:

public class Person
{
    public string FirstName { get; private set; }
    public string LastName { get; private set; }
    public int Age { get; private set; }

    public Person(string firstName, string lastName, int age)
    {
        if (string.IsNullOrEmpty(firstName))
        {
            throw new ArgumentException("First name cannot be null or empty.");
        }

        if (string.IsNullOrEmpty(lastName))
        {
            throw new ArgumentException("Last name cannot be null or empty.");
        }

        if (age < 0)
        {
            throw new ArgumentOutOfRangeException(nameof(age), "Age cannot be negative.");
        }

        FirstName = firstName;
        LastName = lastName;
        Age = age;
    }
}

在上面的示例中,Person类具有三个属性:FirstNameLastNameAge。构造函数接受这三个参数,并在设置属性值之前对它们进行验证。如果参数不符合要求,构造函数将抛出相应的异常。

这样,您可以确保在创建Person对象时,所有必需的参数都已正确提供,并且它们符合预期的要求。

0