VB.Net:启动变量并同时使用“with”?

时间:2015-01-15 16:23:27

标签: vb.net

我有一个类(假设它叫做Person)它有一个名为Age的属性和一个名为LogAccess的子类。

我想让我的代码尽可能小,我希望有类似的东西......

Using frm As New Person With {.Age = 30}
    .LogAccess()                        
End Using

或者也许......

With New Person With {.Age = 30}
    .LogAccess()                        
End With

但这不起作用。

我是否真的需要输入更多代码...

Using p As New Person With {.Age = 30}
    With p
        .LogAccess()    
    End With                    
End Using

(使用“With p”因为我必须在我的真实项目中调用很多方法。)

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

你所追求的只是微优化,这不是真正必要的,但如果你确实想要制作你的代码,那么小的"只需使用:

Using p As New Person With {.Age = 30}
    p.LogAccess()
    ... 
End Using

或者

With New Person With {.Age = 30}
    .LogAccess()
    .AnotherMethod()
    ...
    .Dispose()                       
End With

但是你失去了Using声明的好处。