我目前正在尝试将一些 vb 转换为 c#,在 vb 代码中我有以下行:
If DateTime.TryParse(txtExpirationDate.Text, Nothing) = False Then
_isValid = False
由于我对 vb 的了解极其有限,我认为应该在 c# 中读作:
if (DateTime.TryParse(txtExpirationDate.Text, null) == false)
_isValid = false;
但是,Visual Studio告诉我我有无效的参数:
我'System.DateTime.TryParse(string, out System.DateTime(' 的最佳重载方法匹配有一些无效参数
想知道是否有人愿意帮助我。我做错了什么?这在 c# 中是否可行,如果是这样,我将如何做到这一点?
VB允许您使用变量或任意表达式作为out
/ref
参数。在后一种情况下,将忽略返回值。另一方面,C# 需要一个可以写入返回值的变量。
在 C# 7 之前,无法忽略 out
参数。因此,您需要为此目的声明一个变量(即使您不使用其值(:
DateTime expirationDate;
if (DateTime.TryParse(txtExpirationDate.Text, out expirationDate) == false)
_isValid = false;