تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الدرس السادس والثلاثون - Extension Methods
#1
كاتب الموضوع : أحمد جمال

بسم الله الرحمن الرحيم .
السلام عليكم ورحمة الله وبركاته .

ال Extension Methods واحدة من خواص .net 2008 الجديدة ، تتيح لك هذه الخاصية التعديل على فئات موجودة مسبقاً واضافة دالة أو دوال جديدة .

لنفترض اننا نريد اضافة دالة للفئة string لتقوم بالتأكد من صحة البريد الالكتروني ، سنقوم بعمل دالة تستخدم Regex بالشكل التالي مثلاً :

C#:


كود :
public static class Extensions
{
Public static bool IsValidEmailAddress(this string s)
{
Regex regex = new Regex(@"^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$");
return regex.IsMatch(s);
}
}


vb.net:


كود :
Public NotInheritable Class StringExtenstion
Private Sub New()
End Sub
Public Shared Function IsValidEmailAddress(ByVal s As String) As Boolean
Dim regex As New Regex("\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*")
Return regex.IsMatch(s)
End Function
End Class
والآن ، يمكننا بكل بساطة تعريف متغير string بالشكل التالي :

C#:


كود :
string mailExample = "email@mail. com";
MessageBox.Show(mailExample.IsValidEmailAddress.toString());

vb.net:


كود :
Dim mailExample As String = "email@mail. com"
MessageBox.Show(mailExample.IsValidEmailAddress.toString())
}}}}
تم الشكر بواسطة:
#2
طبعاً كما لاحظت ، لا بد من ان يكون البارميتر على شكل this classname s مثلاً ، لا بد ان يكون الكلاس static .


لم اجرب هذه المواضيع من خلال vb.net ، ربما يكون التحويل خاطئ ولكنك ستجد درساً للاستاذ محمد سامر بالفيجوال بيسك عن نفس الموضوع :
http://vb4arb.com/vb/showthread.php?884

ايضاً الدرس السابق يشرح نقاط عديدة لم اتطرق لها هنا ، هذا الدرس مختصر جداً .
بالتوفيق ...
}}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الدرس الأول : تحميل .net 2008 ومميزات استخدامه oneyemenweb2 1 669 07-03-13, 02:04 AM
آخر رد: abdoojh
  اعلان - انتهاء الدورة - الدرس التاسع والسبعون -) RaggiTech 0 601 14-10-12, 11:23 PM
آخر رد: RaggiTech
  الدرس الثامن والسبعون - Ajax RaggiTech 2 873 14-10-12, 11:22 PM
آخر رد: RaggiTech
  الدرس السابع والسبعون - ASP.net وقواعد البيانات RaggiTech 2 908 14-10-12, 11:19 PM
آخر رد: RaggiTech
  الدرس السادس والسبعون - ASP.net - الجزء الثالث RaggiTech 7 1,157 14-10-12, 11:14 PM
آخر رد: RaggiTech
  الدرس الخامس والسبعون - ASP.net - الجزء الثاني RaggiTech 5 1,313 14-10-12, 11:07 PM
آخر رد: RaggiTech
  الدرس الرابع والسبعون - ASP.net RaggiTech 6 1,085 14-10-12, 10:58 PM
آخر رد: RaggiTech
  الدرس الثالث والسبعون - مقدمة إلى تطوير المواقع RaggiTech 4 846 14-10-12, 10:44 PM
آخر رد: RaggiTech
  الدرس الثاني والسبعون - مقدمة إلى Mono RaggiTech 0 596 14-10-12, 10:37 PM
آخر رد: RaggiTech
  الدرس الواحد والسبعون - XML Commenting RaggiTech 2 793 14-10-12, 10:35 PM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم