1

Asp.net ページで LINQ を使用して DB にアクセスします。

ユーザーがこのコードですべてのテキストボックスが空になる前に、いくつかのテキストボックスと送信ボタンを含むフォームがあります。

txtPName.Text =null;
txtPFamily.Text = null;
txtPUsername.Text = null;
txtPPassword.Text = null;

ボタンをクリックした後、値はDatabseに挿入されますが、テキストボックスが空の場合、データベースに値を挿入したいのですnullが、データベースに空を挿入します:

 Users u = new Users()
 {
      FirstName = txtPName.Text,
      LastName = txtPFamily.Text,
      Username = txtPUsername.Text,
      Password = txtPPassword.Text
 };
4

3 に答える 3

7

条件演算子を使用できます。Textプロパティは返されないためnull、長さが 0 (テキストが空) かどうかを安全に確認できます。

Users u = new Users()
{
    FirstName = txtPName.Text.Length == 0 ? null : txtPName.Text,
    LastName = txtPFamily.Text.Length == 0 ? null : txtPFamily.Text,
    Username = txtPUsername.Text.Length == 0 ? null : txtPUsername.Text,
    Password = txtPPassword.Text.Length == 0 ? null : txtPPassword.Text
};

空白も「空」として扱いたい場合は、次のように使用しますString.IsNullOrWhiteSpace

FirstName = String.IsNullOrWhiteSpace(txtPName.Text) ? null : txtPName.Text
于 2013-09-04T07:44:59.467 に答える
0

string.IsNullOrEmpty または string.IsNullOrWhiteSpace メソッドを使用して、TextBox の値を確認できます。

//これにより、Textbox の文字列が値 (値がある場合) または null のいずれかに設定されます

string yourValueToPutIntoDatabase = (string.IsNullOrEmpty(yourTextBox.Text)) ? yourTextBox.Text : null;

より快適な場合は、if ステートメントで使用することもできます。

string valueToPutInDatabase;
if(string.IsNullOrEmpty(yourTextBox.Text))
{
 //Your textbox was empty
 valueToPutInDatabase = null;
}
else
{
 valueToPutInDatabase = yourTextBox.Text;
}

これを試してみてください..

于 2013-09-04T07:45:56.443 に答える
0

これを試して

if(txtPName.Text==""){
u.FirstName =null;
}
if(txtPFamily.Text==""){
u.LastName =null;
}
if(txtPUsername.Text==""){
u.Username =null;
}
if(txtPPassword.Text==""){
u.Password =null;
}
于 2013-09-04T07:50:11.200 に答える