06-10-12, 11:02 PM
كاتب الموضوع : BADRMEDIA
محكمة بسم الله الرحمن الرحيم
نفتتح جلستنا اليوم بسماع أقوال الدفاع
=============================
كنا قبل أن يظهر المتهم FrameWork 2 نعيش فى شقاء فإذا أردنا أن نقوم بتحويل كائن إلى نوع أخر
كان هناك طريقتين
كمثال
كود :
Dim Q As VB4ARAB
Q = CType(BADRMEDIA, VB4ARAB)
Q = DirectCast(BADRMEDIA,VB4ARAB)
فى الأولي كنا نريد تغيير الكائن BADRMEDIA إلي VB4ARAB
فاستخدمنا المنطوق Ctype وهو يقوم بالمهمة
فى الثانية استخدمنا المنطوق DirectCast
سيقوم بذلك لكن له شرط ان تكون هناك علاقة وراثية بين الكائنين
أو Implementation بين الكائنات
كل هذا لطيف وما فى مشكلة لكن سيدى القاضى إذا حدث خطأ أثناء التحويل كانت الاصدارات السابقة
تعلن العصيان والتمرد وتعلن Exception
فجاء هذا الاصدار المتهم بشئ جديد وهو تعبير TryCast الذى يحل محل الاثنان القدامى
وكما أنه لا يعطي Exception اذا ما حدث خطأ أثناء التحويل Conversion بل يعيد لنا الكائن الذي أردنا تغييره يساوي NoThing مما يعطينا تحكم أفضل في الكود
مثال
كود :
Q = TryCast(BADRMEDIA, VB4ARAB)
If Q IsNot Nothing Then
MSGBOX( Haaaaaa Haaaaaaaaaaa Nice Conversion)
End If
أرأيت سيدي القاضى البساطة والقوة - تحويل دون مشاكل
===========================
بعد الاطلاع على الأدلة تم الموافقة على الافراج عن المتهم ونشر مواده التعليمية
للاطلاع على حيثيات القضية ومنطوق الحكم يرجي زيارة سرايا محكمة MSDN
http://msdn2.microsoft.com/en-us/lib...x8(VS.80).aspx