赋值作为方法参数,如何在VB.NET中做到这一点?

时间:2014-08-15 13:56:29

标签: c# .net vb.net winforms

我正在将一个应用程序转换为VB.Net,我无法弄清楚如何将下面的行转换为VB.Net。此应用程序引用了Sharepoint,因此该对象引用了sharepoint组件。

context.Load(item = listFields.GetItemById(listItemId);

有关如何将此转换为vb.net的任何建议吗?

1 个答案:

答案 0 :(得分:5)

我不喜欢这种C#方式来分配变量并直接使用它。我也会在C#中用两行写出来:

item = listFields.GetItemById(listItemId);
context.Load(item);

现在清楚了吗?

当我发现在VB.NET中不支持直接使用asssignment表达式的返回值时,有一个例外:

string line;
using(var reader = new StreamReader("Path"))
while((line = reader.ReadLine()) != null)
{
    // ...
}

在VB.NET中,你需要像这样丑陋的代码:

Using reader = New StreamReader("Path")
    Do
        Dim line As String = reader.ReadLine()
        If line Is Nothing Then Exit Do
        ' ... '
    Loop
End Using

这就是为什么我在大多数情况下更喜欢File课程,例如:

For Each line As String In File.ReadLines("Path")
    ' ... '
Next