实现IDataErrorInfo接口时,`public string this[string columnName]`是什么意思?

What is the meaning of `public string this[string columnName]` When implementing IDataErrorInfo interface?

实现IDataErrorInfo接口时public string this[string columnName]是什么意思?

    public string this[string columnName]
    {
        get
        {
            switch (columnName)
            {
                case "Name":
                    return ValidateName();
                case "PhoneNumber":
                    return ValidatePhoneNumber();
                default:
                    return string.Empty;
            }
        }
    }

我不明白为什么会有方括号以及它的作用。


答案: 感谢 Hans 和 Scott,现在我知道那只是索引器的语法。更多信息 here.

那是 C# indexer,它让您可以像

一样使用您的 class
IDataErrorInfo myClass = new MyClass();
string phoneNumberErrorInfo = myClass["PhoneNumber"];`