vb.net 如果简写

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/15394203/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-09-03 12:09:32  来源:igfitidea点击:

vb.net if shorthand

.netvb.net

提问by SkyeBoniwell

is there a way to use shorthand to do something like this?

有没有办法使用速记来做这样的事情?

If Not txtBookTitle.Text = String.Empty Then
  objBook.DisplayName = txtBookTitle.Text
End If

回答by Mike Corcoran

objBook.DisplayName = If(Not (txtBookTitle.Text = String.Empty), txtBookTitle.Text, objBook.DisplayName)

回答by JayGee

There are two version of the if statement shorthand. Either If(expression, true part, false part) or If(expression, false part)

if 语句速记有两个版本。If(表达式,真部分,假部分)或If(表达式,假部分)

objBook.DisplayName = If(String.IsNullOrEmpty(txtBookTitle.Text), txtBookTitle.Text)

回答by Romil Kumar Jain

Following code is similar to your three line of code:

以下代码类似于您的三行代码:

objBook.DisplayName = IIF(String.IsNullorEmpty(txtBookTitle.Text),objBook.DisplayName, txtBookTitle.Text)

回答by Neolisk

This is the shortest version (81 character):

这是最短的版本(81 个字符):

If txtBookTitle.Text <> String.Empty Then objBook.DisplayName = txtBookTitle.Text

And I would prefer this for debug-ability. Also easily convertible to C#.

我更喜欢这样的调试能力。也很容易转换为 C#。