در واقع DataSet یک واسطه بین شما و بانک اطلاعاتی است که دستورات رو برای شما اجرا میکنه
پیشنهاد میشود مستقیم با بانک کار کنید
استاد من سوالمو رو بد پرسیدم.
به مثال زیر توجه کنید:
DataSet1TableAdapters.tblhamkarTableAdapter hamkar = new DataSet1TableAdapters.tblhamkarTableAdapter();
hamkar.InsertQuery(txtname.Text, txtfamily.Text, txtemail.Text, txtmobile.Text, txtphonehome.Text, maghtah.Text, txtreshteh.Text, txtdaneshgah.Text
, txtvaziyat.Text, txtzamineh.Text, txtnarmafzar.Text, filename, 0);
تو این مثال فقط از دیتا ست اسفاده شده و تابع insert فراخوانی شده و نیازی به هیچ کانکشن و دستو دیگه ای نیست .
ولی تو این مثال :
string commandText = "UPDATE Sales.Store SET Demographics = @demographics " + "WHERE CustomerID = @ID;"; using (SqlConnection connection = new SqlConnection(connectionString)) { SqlCommand command = new SqlCommand(commandText, connection); command.Parameters.Add("@ID", SqlDbType.Int); command.Parameters["@ID"].Value = customerID; // Use AddWithValue to assign Demographics. // SQL Server will implicitly convert strings into XML. command.Parameters.AddWithValue("@demographics", demoXml); try { connection.Open(); Int32 rowsAffected = command.ExecuteNonQuery(); Console.WriteLine("RowsAffected: {0}", rowsAffected); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
}
و بعضی جاها از معماری سه لایه استفاده میشه . تفاوت در امنیت هست یا در لود اطلاعات تاثیر داره؟
ممنون مشیم تفاوت استفاده از هر کدوم رو برام توضیح بدید.
در چند لایه بحث در توسعه پروژه و استفاده مجدد از کد است که در چندلایه نویسی کار توسعه خیلی ساده تر میشه
برای استفاده از DataSet یا مثل بخث سرعت است
استاد منظور از سرعت همون سرعت کد نویسیه یا سرعت لود شدن صفحات ؟
چون من با SqlDataSource وقتی Datalist رو برای نمایش پر کردم سرعت لود صفحاتم کمتر از زمانی بود که از کلاس ها و لایه بندی استفاده کردم با این معماری اون دو لایه بود.
تصور من این بود که امنیت کمتری در روش اول وجود دارد. آیا تاثیری دارد؟
منظور سرعت کدنویسی بود و توسعه پروژه بود
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)