如何在using语句中使用对象初始值设定项?

Rya*_*hel 3 c# refactoring using using-statement

有没有办法重构这个代码,不必使用临时变量,仍然使用与对象初始化器相关的语法糖?

FrmSomeForm someTempForm = new FrmSomeForm()
{
    SomePropA = "A",
    SomePropB = "B",
    SomePropC = "C"
};
using (FrmSomeForm someForm = someTempForm)
{
    someForm.ShowDialog();
}
Run Code Online (Sandbox Code Playgroud)

Dmy*_*tro 5

using (FrmSomeForm someForm = new FrmSomeForm(){
    SomePropA = "A",
    SomePropB = "B",
    SomePropC = "C"
})
{
    someForm.ShowDialog();
}
Run Code Online (Sandbox Code Playgroud)

这行不通?oO


ale*_*oot 5

using (FrmSomeForm someForm = new FrmSomeForm())
{
    someForm.SomePropA = "A";
    someForm.SomePropB = "B";
    someForm.SomePropC = "C";
    someForm.ShowDialog();
}
Run Code Online (Sandbox Code Playgroud)

我认为这是最简单的方式,甚至在我看来更具可读性......

保持简单 :-)