2012-04-23 6 views
0

WCFサービスを介してテキストボックスとチェックボックスの内容をデータベースに送信しています。データベースへのサブミットのデータ型

これまでのところ、私は、

  • fNameTxtBox.Textを持っている - 文字列
  • (日時)BirthDate.Value、 - のSystem.DateTime
  • toggle1.IsChecked、 -

ブールしかし、データ型がintの場合はどうなりますか?

残念ながら、オートコンプリートはそれほど私を助けません。もちろん、.Textをエンディングとして受け入れません。

誰かが手を貸してくれて、これが何であるか教えていただけますか?

EDIT:

ここで私が完了しようとしている私の完全な文があります。ソースはWP7アプリ上のテキストボックスであるとき、私は、そのための方法は、int型であることを、それを必要とされownerTextBoxの終了を探しています:

private void addAccountBtn_Click(object sender, RoutedEventArgs e) 
    { 
    _ServiceClient.AddDriverAsync(fnameTxtBox.Text, snameTxtBox.Text, (DateTime)BirthDate.Value, phonemobNumBox.Text, toggle1.IsChecked, toggle2.IsChecked, toggle3.IsChecked, toggle4.IsChecked, toggle5.IsChecked, toggle6.IsChecked, toggle7.IsChecked, toggle8.IsChecked, toggle9.IsChecked, toggle10.IsChecked, toggle11.IsChecked, toggle12.IsChecked, toggle13.IsChecked, toggle14.IsChecked, toggle15.IsChecked, ownerTextBox.????); 
    } 

すなわち置き換える????正しい終わりで、またはその部分をそのまま再フォーマットして動作させることができます。

+0

(http://mattgemmell.com/2008/12/08/what-have-あなたが試した/)あなたの実際の質問は何ですか? – basti

+0

種類を指定するためにSystem.Data.SqlTypes名前空間を使用する必要があると思います – Prabhavith

+0

どのような種類のGUIですか? ASP.NET Webフォーム? ASP.NET MVC? WinForms? WPF? Silverlight?適切なタグを付けてください。 –

答えて

1

無効な値がサービスに送信されないように、クライアントで検証を実行する必要があります。値が整数かどうかを調べることでこれを行うことができ、そうでない場合はメッセージを表示することができます。検証基準を満たしている場合にのみ、サービスにデータを送信してください。

public void OnButtonClick(object sender, EventArgs e) { 
    int value; 

    bool isValid = int.TryParse(textBox.Text, out value); 

    if (isValid) { 
     // send to WCF 
    } 
    else { 
     // display a message 
    } 
} 
0

あなたはintクラスを使用して値を解析する必要があります。

int.Parse(myTextBox.Text) 

値は整数として表現できない場合は、適切な検証や例外処理を実行することがありますのでint.Parseは、例外をスローすることに注意してください。方法のTryParseファミリーを調べてください。

Casting, Type Conversion, and Parsingでお読みください。あなたが投稿したソース・コードを使用して

、あなたはそれを変更します:[?あなたは何を試してみました]

private void addAccountBtn_Click(object sender, RoutedEventArgs e) 
{ 
    _ServiceClient.AddDriverAsync(
     fnameTxtBox.Text, <snip_lots_of_arguments>, 
     toggle15.IsChecked, 
     int.Parse(ownerTextBox.Text)); //I've only changed the very last bit here 
} 
+0

hmmm、それを加えた後、私のすべてのcheckBox.IsCheckedが引数をスローします: 'bool?'から変換できません。ブールに それを追加する前にそのエラーがありませんでした。チェックボックスが機能しました – schuhmi2

+0

私の編集を見てください - あなたは 'int'の特定の引数に' int.Parse'を使ってください。これは、null可のブール値を持つ無関係の問題であるように思えます。これに ' .Value'を使ってみてください。 –

関連する問題