使用Winforms,如何将掩码文本框的值插入数据库?

时间:2017-03-23 14:48:23

标签: c# asp.net winforms maskedtextbox

我无法通过按钮点击事件将屏蔽文本框字段的值插入数据库。

我的表格看起来像这样:

https://developers.google.com/android/guides/setup#add_google_play_services_to_your_project

所以基本上你将数据输入到字段中,单击按钮,应该使用以下代码插入数据库:

        private void button1_Click(object sender, EventArgs e)
    {
        // Open connection with the SQL Server, using connection string
        SqlConnection con = new SqlConnection("Data Source=MY-PC\\SQLEXPRESS;Initial Catalog=EnlaceDigital;User ID=user;Password=pass");
        con.Open();

        SqlCommand query = new SqlCommand("INSERT into Contratos VALUES ('" + this.teléfonoMaskedTextBox.Text + "', " +
            "'" + this.folio_PISATextBox.Text + "', '" + this.tipo_de_TareaTextBox.Text + "', " +
            "'" + this.estatusTextBox.Text + "','" + this.motivo_EstatusTextBox.Text + "','" + this.dTOTextBox.Text + "'," +
            "'" + this.cOPETextBox.Text + "','" + this.no__ExpedienteTextBox.Text + "'," +
            "'" + DateTime.Parse(this.fecha_InicialDateTimePicker.Text) + "', '" + DateTime.Parse(this.fecha_SolicitudDateTimePicker.Text) + "');", con);

        query.ExecuteNonQuery();
        MessageBox.Show("Added");
        con.Close();
        this.Close();
    }

但是,此方法会抓取字段的.Text属性,因此Masked Textbox(字段“Teléfono”)将整个掩码格式写入我的数据库!

所以在数据库中,我最终会得到类似“(012)345 - 6789”的内容,而不是10位数字。

我认为这种情况正在发生,因为我基本上是按原样插入文本框的内容或文字,因为我使用的是this.teléfonoMaskedTextBox.Text,我不知道如何获得该字段的实际,而不仅仅是文字

如果有帮助,字段“Teléfono”的类型为 nvarchar(50),因此它“接受”掩码格式,但我需要在数据库中插入10位数的电话号码(没有面具),用于其他目的。

谢谢。

0 个答案:

没有答案