C#中的链式构造函数 - 使用中间逻辑

Mob*_*erg 2 c# constructor

从这个帖子:http://geekswithblogs.net/kaju/archive/2005/12/05/62266.aspx有人问(在评论中)这个问题:

有没有办法做这样的事情:

public FooBar(string fooBar)
{
string[] s = fooBar.split(new char[] { ':' });
this(s[0], s[1]);
}

public Foo(string foo, string bar)
{
...
} 
Run Code Online (Sandbox Code Playgroud)

好吧,我遇到了需要同样事情的情况.它有可能吗?提前致谢.

编辑

我的意思是这个

public Foo(string fooBar)
{
string[] s = fooBar.split(new char[] { ':' });
this(s[0], s[1]);
}

public Foo(string foo, string bar)
{
...
} 
Run Code Online (Sandbox Code Playgroud)

Foo是一个构造函数.

我的问题是我必须在调用其他构造函数之前做很多逻辑 - 包括一些IO的东西.

Tim*_*son 14

不是直接的,但是:

public FooBar(string fooBar)
    : this(fooBar.Split(new char[] { ':' }))
{
}

private FooBar(string[] s)
    : this(s[0], s[1])
{
}

public FooBar(string foo, string bar)
{
...
}
Run Code Online (Sandbox Code Playgroud)