PDA

View Full Version : سوال: کسی میتونه Boxing و Unboxing رو توضیح بده؟



mmbguide
چهارشنبه 18 شهریور 1394, 20:52 عصر
سلام

در فروم مایکروسافت یک سوال مطرح کردم و یکی از جوابها این بود:

Yes, you are responsible for opening and closing connections in the DAL. You should come away from TableAdapter, datasets and datatable, because datatables use boxing and unbox and it affects performance. You should consider using custom objects, SQL Server Command objects, T-SQL or stored procedures and datareader and using a List<T> of custom objects.


حالا میخوام بدونم منظورش از because datatables use boxing and unbox چیه.

لینک مطلب

https://social.msdn.microsoft.com/Forums/vstudio/en-US/b3a87b31-d3f9-44df-a205-3a9d309bba6f/is-necessary-to-check-connection-in-3tier-application?forum=csharpgeneral

ممنون

alireza264
چهارشنبه 18 شهریور 1394, 21:49 عصر
سلام
وقتی که یک نوع مقدار به یک نوع آبجکت تبدیل می شود، boxing انجام میشه و برعکس اگر یک نوع آبجکت به نوع مقدار تبدیل شود، unboxing انجام شده.
به عبارت دیگه Boxing عمل تبدیل مقدار نوع داده‌ای به نوع مرجع مشابه آن می‌باشد.
مثال:

int x = 42;// Value type...
object box = x;// x باکس میشه به box




UnBoxing و عمل تبدیل نوع مرجع به نوع داده‌ای می‌باشد. مثال:


int y = (int)box;

mmbguide
چهارشنبه 18 شهریور 1394, 23:48 عصر
ممنونن از پاسختون

اینطور که نوشته TableAdapter, datasets and datatable در عملکرد برنامه تاثیر میذاره و در ادامه به موضوعی در SQL اشاره کرده و من هم به نوعی در SQL تازه کارم. اگه کسی توضیح بده ممنون میشم

nunegandom
پنج شنبه 19 شهریور 1394, 02:09 صبح
You should consider using custom objects, SQL Server Command objects, T-SQL or stored procedures and datareader and using a List<T> of custom objects.


سلام نوشته مجبوری از Object هایی که sqlserver در اختیارمون گذاشته استفاده کنی T-SQL که دستورات sqlserver هستش store procedure متود های درون sql هستش که ما برنامه نویسا مینویسیم datareader یه کلاسه توی برنامه هامون مثلا توی ویندوز List هم اگه اشتباه نکنم ماله LINQ هستش که توی using System.Linq این هستش
خلاصه مطلب اینا با string کار میکنن و قدیمی شده دیگه
بیا سمت Entity Framework همه چیز intellisense داره برعکس روش قدیمی