1
2つのコードサンプルが異なる動作をする理由を理解しようとしています。私はいつもIf()関数がIf言語の機能を模倣すると信じていました。または、これを引き起こしているNullable(Of Integer)の動作を見ていますか?If()関数で異なるnull可能な整数のデフォルト値
サンプル#1:
If Not String.IsNullOrWhiteSpace(PC.SelectedValue) Then
Dim pcFilter1 As Integer? = CInt(PC.SelectedValue)
Else
Dim pcFilter1 As Integer? = Nothing
End If
サンプル#2:
Dim pcFilter2 As Integer? = If(Not String.IsNullOrWhiteSpace(PC.SelectedValue),
CInt(PC.SelectedValue),
Nothing)
結果:
pcFilter1 =何も
pcFilter2 = 0
まあは説明しました。ありがとうございました! – motto