自定义类C#的解析方法

Dev*_*per 1 c#

我们都知道这件事

bool.Parse(Session["foo"].ToString())
Run Code Online (Sandbox Code Playgroud)

如何为某些自定义类实现相同的PARSE方法?

所以,如果我有

class MyClass
{

}
Run Code Online (Sandbox Code Playgroud)

有可能这样做

MyClass.Parse(Session["foo"])
Run Code Online (Sandbox Code Playgroud)

Jus*_*ner 6

您需要做的就是为您的类编写一个名为Parse()的静态方法,该方法接受String并使用它创建一个MyClass实例.

public class MyClass
{
    public static MyClass Parse(string input)
    {
        if(String.IsNullOrWhiteSpace(input)) throw new ArgumentException(input);

        var instance = new MyClass();

        // Parse the string and populate the MyClass instance

        return instance;
    }
}
Run Code Online (Sandbox Code Playgroud)