-1

次のコードがあります。

var topicValue = Model.Topic;
var replaceResult = string.Empty;
if (topicValue != null & topic.Contains(topicValue)) {

}

私の意図は、topicValue が null の場合に if が実行されないようにすることです。ただし、次のようなエラー メッセージが表示されます。

オブジェクト参照がオブジェクト インスタンスに設定されていません。

誰も私がこれを機能させる方法を説明できますか?

4

5 に答える 5

3

&&の代わりに使用し&ます。論理 AND演算子を使用&すると、最初の部分の結果に関係なく、条件の両方の部分が実行されます。条件付き AND演算子&&を使用すると、最初の部分の結果が の場合にのみ2 番目の部分が実行されtrueます。

于 2012-08-21T10:17:03.463 に答える
3
var topicValue = Model.Topic;
var replaceResult = string.Empty;
if (topicValue != null & topic.Contains(topicValue)) {

}

する必要があります

var topicValue = Model.Topic;
var replaceResult = string.Empty;
if (topicValue != null && topic.Contains(topicValue)) {

}

編集:

また、どこでトピックを初期化しますか? 多分あなたもそれをチェックするべきです、そしてそれはそうあるべきです

var topicValue = Model.Topic;
    var replaceResult = string.Empty;
    if (topicValue != null && topic != null && topic.Contains(topicValue)) {

    }
于 2012-08-21T10:17:15.397 に答える
2

&& 演算子を論理 AND として使用する必要があります

if (topicValue != null **&&** topic.Contains(topicValue)) {

}
于 2012-08-21T10:17:38.907 に答える
2

ほとんどの場合、あなたtopic自身が null です。これが例外/エラーの理由です。

のチェックtopic!=nullも行います。

于 2012-08-21T10:17:05.100 に答える
2

&論理 1 の代わりに二項演算子を使用しています&&

于 2012-08-21T10:17:31.077 に答える