C# 将块范围更改为写入对象时保存的对象';姓名

C# 将块范围更改为写入对象时保存的对象';姓名,c#,scope,inference,C#,Scope,Inference,是否有方法调用对象范围内的成员? 例如,与此相反: myObject.Foo(); myObject.value = 0; 要在myObject的范围内调用: myObject. { Foo(); value = 0; } 这只会像隐式类型var那样节省键入时间。这似乎是可能的,因为在编译时,我们知道myObject是什么类型。不,C#中没有这种语法,除了调用构造函数之外,在创建对象的新实例时,您可以将其分配给公共属性 例如: var obj = new MyObject {

是否有方法调用对象范围内的成员? 例如,与此相反:

myObject.Foo();
myObject.value = 0;
要在myObject的范围内调用:

myObject.
{
    Foo();
    value = 0;
}

这只会像隐式类型
var
那样节省键入时间。这似乎是可能的,因为在编译时,我们知道myObject是什么类型。

不,C#中没有这种语法,除了调用构造函数之外,在创建对象的新实例时,您可以将其分配给公共属性

例如:

var obj = new MyObject {
    Value1 = 0;
    Value2 = 1;
    ....
}

我真的认为任何现代IDE的自动完成都会挫败这一目标,而前面的代码片段更具可读性。我甚至没有触及后一段代码不是有效的C#这一事实。但是,在VB中,您可以使用。但问题是关于C#,我不知道现有的等价物。