0

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

これまでのところ、私は

  • fNameTxtBox.Text, - 文字列
  • (DateTime) BirthDate.Value、 - System.DateTime
  • toggle1.IsChecked, - bool

しかし、データ型が int の場合はどうなるでしょうか。

残念ながら、オートコンプリート自体は役に立ちません。もちろん.Text、エンディングとして受け入れられません。

誰か手を貸して、これがどうなるか教えてくれませんか?

編集:

これが、私が完成させようとしている私の完全な声明です。ソースが 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.????);
    }

つまり、???? を置き換えます。正しいエンディングで、またはその部分を再フォーマットして、それが機能するようにします。

4

2 に答える 2

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
    }
}
于 2012-04-23T10:17:03.667 に答える
0

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

int.Parse(myTextBox.Text)

int.Parse値が整数として表現できない場合は例外がスローされるため、適切な検証または例外処理を実行する必要がある場合があります。メソッドのTryParseファミリを調べます。

Casting、Type Conversion、および 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
}
于 2012-04-23T10:17:07.997 に答える