简体   繁体   中英

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

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

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

I don't get it why there are square parentheses and what it does.


Answer: Thanks to Hans and Scott now I know that is simply the syntax of an indexer. More information here .

That is a C# indexer , it lets you use your class like

IDataErrorInfo myClass = new MyClass();
string phoneNumberErrorInfo = myClass["PhoneNumber"];`

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM