Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 插入时如何将一个表中的字段转换为另一个表中的另一个字段_C#_Winforms - Fatal编程技术网

C# 插入时如何将一个表中的字段转换为另一个表中的另一个字段

C# 插入时如何将一个表中的字段转换为另一个表中的另一个字段,c#,winforms,C#,Winforms,我有一个包含McCenter值的文本框,如何将McCenter值转换为mcID,然后作为mcID插入医生表 我认为您必须创建下拉列表而不是文本框控件,以便在插入医生记录时选择值 如果将文本框用于mccenter输入字段,则用户可以在文本框中键入任何不匹配的值。从何处获取mccenter值?您可能不希望尝试根据类似于描述列的内容查找ID,因为它可能很容易更改文本框中的值将由上一个表单传递,因此该值将与McCenter中的一个值完全相同。只是我不知道如何将值从mcCentre转换为mcID,并

我有一个包含McCenter值的文本框,如何将McCenter值转换为mcID,然后作为mcID插入医生表


我认为您必须创建下拉列表而不是文本框控件,以便在插入医生记录时选择值


如果将文本框用于mccenter输入字段,则用户可以在文本框中键入任何不匹配的值。

从何处获取mccenter值?您可能不希望尝试根据类似于描述列的内容查找ID,因为它可能很容易更改文本框中的值将由上一个表单传递,因此该值将与McCenter中的一个值完全相同。只是我不知道如何将值从mcCentre转换为mcID,并将其传递给doctor表,以作为mcID插入数据库@Giridhari不知道您在上一个表单中使用的控件类型。如果有值,则在某个隐藏字段中设置所选值。我使用的另一个选项“使用子查询”或“数据”看起来像主表,所以缓存数据并根据描述检索值。@Pony既然您是从上一个表单传递值,那么我假设您是从上一个表单在表中插入值,对吗?如果是这样,在为mcCenter将值放入textbox时,还可以将上次插入返回的mcID附加到同一textbox的自定义属性。当从当前表单中插入值时,您可以很好地读取它并将其放入医生表中
private int AddDoctorRecord()
        {
            int result = 0;
            // TO DO: Codes to insert customer record
            //retrieve connection information info from App.config
            string strConnectionString = ConfigurationManager.ConnectionStrings["SACPConnection"].ConnectionString;
            //STEP 1: Create connection
            SqlConnection myConnect = new SqlConnection(strConnectionString);
            //STEP 2: Create command
            String strCommandText = "INSERT DOCTOR(dFirstName,dLastName,dUsername,dPassword,dEmail) "
                + " VALUES (@dFirstName,@dLastName,@dUsername,@dPassword,@dEmail)";

            SqlCommand updateCmd = new SqlCommand(strCommandText, myConnect);

            updateCmd.Parameters.AddWithValue("@dFirstName", txtDoctorFirstName.Text);
            updateCmd.Parameters.AddWithValue("@dLastName", txtDoctorLastName.Text); 
            updateCmd.Parameters.AddWithValue("@dUsername", txtDoctorUsername.Text);
            updateCmd.Parameters.AddWithValue("@dPassword", txtDoctorPassword.Text);
            updateCmd.Parameters.AddWithValue("@dEmail", txtDoctorEmail.Text);

            //updateCmd.Parameters["@clientid"].Direction = ParameterDirection.Output; 
            // STEP 3 open connection and retrieve data by calling ExecuteReader
            myConnect.Open();
            // STEP 4: execute command
            // indicates number of record updated.
            result = updateCmd.ExecuteNonQuery();

            // STEP 5: Close
            myConnect.Close();
            return result;
        }