توضیحات و دانلود

استفاده از GridView درذخیره و بازیابی پویا TextBox در پایگاه داده SQL Server با asp.net
0 0
استفاده از GridView درذخیره و بازیابی پویا TextBox در پایگاه داده SQL Server با asp.net

با سلام با یک مقاله دیگر از asp.net در خدمت شما هستیم .در این مقاله استفاده از GridView درذخیره و بازیابی پویا TextBox در پایگاه داده SQL Server را نشان خواهیم داد .

برای شروع،  جدول نمونه را در SQL Server ایجاد کنید. در این مثال، جدول را به عنوان "SampleTable" نامگذاری و فیلدهای زیررا وارد میکنیم :

توجه :

تعیین ID به افزایش خودکار به طوری که شناسه به طور خودکار برای هر سطر جدید اضافه شده در جدول تولید می شود. برای انجام این کار نام ستون "Id" را انتخاب کنید و در خواص ستون "مشخصات هویت" را به بله تنظیم کنید.

اکنون به ASPX بروید و یک دکمه برای ذخیره داده ها به پایگاه داده اضافه کنید.

اکنون اجازه دهید روشی برای ذخیره داده  در پایگاه داده ایجاد کنیم. اولین چیزی که در اینجا نیاز داریم این است که رشته اتصال را تنظیم کنیم تا بتوانیم از کدها به سرور Sql متصل شویم. در این مثال ما قصد داریم از فایل web.config برای تنظیم رشته اتصال استفاده کنیم. علامت زیر را ببینید:

<connectionStrings>

            <add name="DBConnection" connectionString="Data Source=SERVERNAME\SQLEXPRESS;Initial Catalog=SampleDB;Integrated Security=SSPI;" providerName="System.Data.SqlClient"/>     

</connectionStrings>

از آنجا که رشته اتصال در حال حاضر تنظیم شده است،ایجاد روش برای ذخیره داده ها به پایگاه داده ادامه دهید.

ابتدا فضای نامهای زیر را اضافه کنید:

using System.Collections.Specialized;

using System.Text;

using System.Data.SqlClient;

ما باید فضاهای نامی را در بالا اعلام کنیم تا بتوانیم از روشهای ساخته شده در SqlClient، String Collections و StringBuilder در کد ها استفاده کنیم.

دوم، روشی برای فراخوانی رشته های اتصال که در فایل web.config تنظیم شده است، ایجاد کنیم.

    //A method that returns a string which calls the connection string from the web.config

    private string GetConnectionString()

    {

        //"DBConnection" is the name of the Connection String

        //that was set up from the web.config file

        return System.Configuration.ConfigurationManager.ConnectionStrings["DBConnection"].ConnectionString;

    }

 کد زیر برای روش Insert است:

//A method that Inserts the records to the database

    private void InsertRecords(StringCollection sc)

    {

        SqlConnection conn = new SqlConnection(GetConnectionString());

        StringBuilder sb = new StringBuilder(string.Empty);

        string[] splitItems = null;

        foreach (string item in sc)

        {

 

            const string sqlStatement = "INSERT INTO SampleTable (Column1,Column2,Column3) VALUES";

            if (item.Contains(","))

            {

                splitItems = item.Split(",".ToCharArray());

                sb.AppendFormat("{0}('{1}','{2}','{3}'); ", sqlStatement, splitItems[0], splitItems[1], splitItems[2]);

            }

 

        }

 

        try

        {

            conn.Open();

            SqlCommand cmd = new SqlCommand(sb.ToString(), conn);

            cmd.CommandType = CommandType.Text;

            cmd.ExecuteNonQuery();

 

           //Display a popup which indicates that the record was successfully inserted

            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "Script", "alert('Records Successfuly Saved!');", true);

 

        }

        catch (System.Data.SqlClient.SqlException ex)

        {

            string msg = "Insert Error:";

            msg += ex.Message;

            throw new Exception(msg);

 

        }

        finally

        {

            conn.Close();

        }

    }

حالا، در رویداد Button Click  می توانیم روش "InsertRecords" را پس از استخراج مقادیر TextBox پویا برای روشن تر شدن آن وارد کنیم

protected void Button1_Click(object sender, EventArgs e)

{

        int rowIndex = 0;

        StringCollection sc = new StringCollection();

        if (ViewState["CurrentTable"] != null)

        {

            DataTable dtCurrentTable = (DataTable)ViewState["CurrentTable"];

            if (dtCurrentTable.Rows.Count > 0)

            {

                for (int i = 1; i <= dtCurrentTable.Rows.Count; i++)

                {

                    //extract the TextBox values

                    TextBox box1 = (TextBox)Gridview1.Rows[rowIndex].Cells[1].FindControl("TextBox1");

                    TextBox box2 = (TextBox)Gridview1.Rows[rowIndex].Cells[2].FindControl("TextBox2");

                    TextBox box3 = (TextBox)Gridview1.Rows[rowIndex].Cells[3].FindControl("TextBox3");

 

                    //get the values from the TextBoxes

                    //then add it to the collections with a comma "," as the delimited values

                    sc.Add(box1.Text + "," + box2.Text + "," + box3.Text);

                    rowIndex++;

                }

                //Call the method for executing inserts

                InsertRecords(sc);

            }

        }

}

 اجرا کد بالا جدول زیر را با مقادیر وارد شده در TextBox نشان می دهد:

با کلیک بر روی دکمه ذخیره، داده ها را به پایگاه داده وارد کنید. نگاهی به جدول زیر کنید:


دانلود
  • لینک های دانلود دوره های آموزشی تا پایان دوره قابل دانلود می باشد.
  • برای خارج کردن فایل ها از حالت فشرده از ورژن جدید نرم افزار winrar استفاده کنید.
  • برای خارج کردن فایل ها از حالت فشرده لینک های دانلودی که چندین قسمت می باشند فقط قسمت اول را از حالت فشرده خارج کنید.
  • لطفا توضیحات نوشته شده برای مطالب را با دقت بخوانید.
  • برای نمایش فیلم ها می توانید از نرم افزار هایی مانند Km Player , VLC Player یا Media Player Classic استفاده کنید.

ارسال نظر
ارسال پیام به :