私はこのコードに出くわしました:
if (txtUPC.Text.ToString() != null)
...そして、このテストが有効かどうか疑問に思います - text プロパティが null になる可能性はありますか? txtUPC は動的に作成されるコントロールではありません。もちろん、空にすることも、空白だけを含めることもできますが、null ですか? もしそうなら、その方法を知りたいです。繰り返しますが、テキスト プロパティで ToString() を呼び出すと、サスペンダーとベルトを着用しているようにも見えます。
アップデート
したがって、私にとっては (.NET 1.1、Windows CE/Compact Framework を思い出してください)、これは次のように思われます。
if (txtUPC.Text.Trim() != string.Empty)
...これよりも優れたテストです:
if (txtUPC.Text.ToString() != null)
ただし、このコードをさらに注意深く見ると、いずれにせよ、外側または内側のガントレットのいずれかが冗長/不必要であるように見えます。メソッドに含まれる 2 つの shibbeleth-pronunciation-checker に注意してください。
if (txtUPC.Text.ToString() != null)
{
if (txtUPC.Text.Length > 0)
{
. . .
else
{
MessageBox.Show("Please enter a value in the item field");
txtUPC.Focus();
}
}
else
{
MessageBox.Show("Please enter a value in the item field");
txtUPC.Focus();
}
. . .
ゲートキーパー/ガントレット 1 人で十分なようです。次の方法で確認します。
if (txtUPC.Text.Trim() != string.Empty)
...またはこの方法:
if (txtUPC.Text.Trim().Length > 0)
?