2016-11-30 16 views
-1

背後にあるコード内の値のテキストボックスをチェックして、誰かがここで手がかりを私にできることを願って。は、私はここに私のコードで何かについて困惑してるC#

レコードにデータを書き込む前に、自分のユーザーがテキストボックスに値を入力したかどうかを確認しようとしています。このコードを使用して、テキストボックスにデータが入力されているかどうかを確認します。しかし、この「いつも」は真実に戻り、ユーザーがテキストを置いているかのように進行します。

if (ReasonTextBox.Text.ToString() != null) 
    { 
    //Some commands to write data to a table 
    } 
else 
    { 
    //Some alternative things to do 
    } 

私は同じ結果を持つ ".ToString()"なしでこれを実行しました。テキストボックス内のテキストの有無にかかわらず、デバッグでそれを観察したので、コードは関係なく手順に入ります。

SOOOOOOは...私はここで何かが欠けする必要がありますC#でWebサイトを書くにかなり新しいですということであることは、明らかに空白のテキストボックスは、実際にnullではないでしょうか?それが事実である場合、私はそれが人口となっているかどうかチェックすることを提案しますか?

+1

(string.IsNullOrEmpty(文字列))であれば、 'のようなものを使用してみてください' – ThePerplexedOne

答えて

0

Textプロパティは、それが空の文字列が含まれている、nullではありません。

ではなく、試してみてください。

if (!string.IsNullOrWhiteSpace(ReasonTextBox.Text)) { 
    // do something 
} 

Textがnullであった場合、それにToString()メソッドを呼び出すとき、あなたはNullReferenceExceptionを持っているでしょう。

0

TextBoxTextプロパティは、私の知る限りnullことはありませんstringです。 (それ以外の場合はToString()を呼び出すとNullReferenceExceptionが返されます)。

ToString()の呼び出しは、Textが既にstringであるため、廃止されました。

Textnullであれば、それはかどうかを確認する必要はありません:

if (!string.IsNullOrEmpty(ReasonTextBox.Text)) 

のみ空白を含む文字列があまりにも間違って入力されている場合:

if (!string.IsNullOrWhiteSpace(ReasonTextBox.Text)) 
0

オーケーそれが始まる前にこれを終わらせるつもりです。これを越えて走る人は、私が発見したものの背景とその解決方法の背景を説明しましょう。 ASPに加えて

:だけでなく、テキストボックスの上にHtmlEditorExtender:TextBoxの私はajaxToolkitを使用していました。今私は確信していないし、戻って確認する時間はありませんが、私は非常にextenderが私が見つけたものがテキストボックスに
であることを追加したということを疑う。当然の
は、レンダリングされたページで首の目には見えないが、私はこの問題を回避するために私のストアドプロシージャを構築するまでではなかったし、テーブルにデータを書き、私が想定した
は(空白になりましたまたはnull)私は何が起こっていたことに気づいた。だから、私がしたのは、テキストボックスの
の値をチェックし、 '
'だけが書き込みを避けるならば、この後に2次検査を書いただけです。これで問題は解決しました。 HPの計算機ソリューションのようなビットですが、うまくいきます!

関連する問題