PDA

View Full Version : Data Adapter چگونه كار مي كند؟



ali.akhbary
شنبه 23 آبان 1388, 18:24 عصر
وقتي براي Data Adapter مشخص مي كنيم كه جستجوي مورد نظر ما را انجام و ركورد شماره x تا y را بياورد واقعا اين كار چگونه انجام مي شود؟

فرض كنيد كه نتيجه جستجوي من 1000 ركورد مي شود، اما من به شماره 10 تا 20 نياز دارم و اين عمل را با Data Adapter تنظيم مي كنم. حال جدا سازي در SQL اعمال مي شود يا در سمت برنامه؟

اگه سمت برنامه باشه كه خيلي پرهزينه است.:متفکر:

My SQL اين امكان رو داره كه اين جداسازي در سمت My SQL Server اعمال بشه.

Ali_Mor
یک شنبه 24 آبان 1388, 12:30 عصر
مطمئن نیستم، به گمانم از DataReader استفاده می کنه

majid325
یک شنبه 24 آبان 1388, 14:49 عصر
معماری ado.net بر پایه DisConnected هست و تماما به صورت DisConnected در سمت App اجرا میشن.
در رابطه با نکته آخرتون هم احتمالا منظورتون Paging هست که در MsSql هم هست.

hdv212
یک شنبه 24 آبان 1388, 15:05 عصر
وقتي براي Data Adapter مشخص مي كنيم كه جستجوي مورد نظر ما را انجام و ركورد شماره x تا y را بياورد واقعا اين كار چگونه انجام مي شود؟
این موضوع کاملا به نحوه ی کار شما با کلاسهای Ado.net بستگی داره، اگر از دیتاست استفاده میکنید، خب این کار در حافظه ی سیستم انجام میشه، ولی اگر کوئری شما این خصیصه رو داره باید بگم که این فرمان در سطح Sql Server بررسی و اجرا میشه.
اگر هم از فن آوریهای پیشرفته تر مانند Linq to Sql یا Entity Framework استفاده کنید، این کوئری به صورت اتوماتیک و بهینه شده تولید و به Sql Server فرستاده میشه.

ali.akhbary
یک شنبه 24 آبان 1388, 19:18 عصر
معماری ado.net بر پایه DisConnected هست و تماما به صورت DisConnected در سمت App اجرا میشن.

DataReader--> connection orineted,fast,forward and nagvgigating possible
Dataset---> Multilple support,dissconnected,slow (http://www.dotnetspider.com/forum/170374-Dataset-Data-Reader.aspx)


ممنونن از لطف شما. من جوابم رو گفتم. (http://msdn.microsoft.com/en-us/library/tx1c9c2f(VS.80).aspx)

The DataAdapter provides a facility for returning only a page of data, through overloads of the Fill method. However, this might not be the best choice for paging through large query results because, although the DataAdapter fills the target DataTable or DataSet with only the requested records, the resources to return the entire query are still used. To return a page of data from a data source without using the resources to return the entire query, specify additional criteria for your query that reduce the rows returned to only those required.