العودة   منتدى رياض الجنة - Riad Al-Ganah > الرياض التقنية > روضة الكورسات والدورات التقنية والعلمية > روضة دورات تقنية الـ .NET بلغاتها المختلفة > دورة .NET 2008 من منتدى فيجوال بيسك للعرب

دورة .NET 2008 من منتدى فيجوال بيسك للعرب مقدم الدورة : أحمد جمال ، نوع الدورة : كتابية مصحوبة بصور ، حالة الدورة : انتهت ، عدد الدروس : 80 درس . مستوى الدورة : من البداية للاحتراف .

إضافة رد

 
أدوات الموضوع انواع عرض الموضوع
  #1  
قديم 03-07-2010, 02:30 AM
الصورة الرمزية khaledbelal
khaledbelal khaledbelal غير متواجد حالياً
مبرمج المنتدى
الادارة تكليف لا تشريف
 
تاريخ التسجيل: Oct 2009
العمر: 34
المشاركات: 3,606
افتراضي الدرس الستون : Object Serialization - دورة .net 2008

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

سنتعرف اليوم سريعاً عن مفهوم ال Object Serialization .

عمل الفئة الخاصة بك لتكون Serializable :

كل ما في الأمر أن تضع الكلمة : [Serializable] اعلى اسم الكلاس بالشكل التالي مثلاً :
C#:
كود PHP:
[Serializable]
public class 
serial
{

vb.net:
كود PHP:
<Serializable()> 
Public Class serial 
    
End 
Class 

ماذا استفيد من كون الفئة الخاصة بي Serializable ؟

معظم الفئات الاساسية تتيح لك كونها Serializable للاستفادة من بعض الخصائص مثل الكتابة المباشرة إلى ملفات القرص الصلب كما تعلمنا سابقاً ، هذا المثال :
C#:
كود PHP:
serial sample =new serial();
using(Stream fs1 = new FileStream("data.txt",
FileMode.CreateFileAccess.WriteFileShare.None))
{
binFormat.Serialize(fw1sample );

vb.net:
كود PHP:
Dim sample As New serial() 
Using fs1 As Stream = New FileStream("data.txt"FileMode.CreateFileAccess.WriteFileShare.None
    
binFormat.Serialize(fw1sample
End Using 
ماذا أيضاً ؟
هناك عدد كبير من الكائنات التي قد لا تقبل التعامل مع الفئات الخاصة بك إلا لو كانت Serializable ، منها ال View State في صفحات ال ASP.net .

هناك العديد من الطرق لعمل Serialization لكائناتك ، منها BinaryFormatter :
C#:
كود PHP:
Dim binFormatter As New BinaryFormatter() 
Using fs1 As Stream = New FileStream("data.txt"FileMode.CreateFileAccess.WriteFileShare.None
    
binFormat.Serialize(fs1myobject
End Using 
vb.net:
كود PHP:
BinaryFormatter binFormatter = new BinaryFormatter();
using(Stream fs1 = new FileStream("data.txt",
FileMode.CreateFileAccess.WriteFileShare.None))
{
binFormat.Serialize(fs1myobject);

ولعمل Deserializing :

C#:
كود PHP:
BinaryFormatter binFormatter = new BinaryFormatter();
using(Stream fs1 File.OpenRead("data.txt"))
{
newobject car =
(
objectclass)binFormatter.Deserialize(fs1);

vb.net:
كود PHP:
Dim binFormatter As New BinaryFormatter() 
Using fs1 As Stream File.OpenRead("data.txt"
    
Dim car As newobject DirectCast(binFormatter.Deserialize(fs1), objectclass
End Using 

XmlSerializer :

يعد ال XML النوع الأحدث في عالم تخزين البيانات نظراً لإنه يجمع بين امكانيات قواعد البيانات من حيث البحث وخلافه ويجمع بين سهولة التعامل معها كما في الملفات النصية ، الصيغة العامة لأي ملف XML بالشكل التالي :
كود بلغة HTML:
<root>
<Member>
<Name>AHmed</Name>
<Age>22</Age>
</Member>
</root>
أحمد و 22 تسمى Element أما Name و Age تسمى Attribute

لمعرفة المزيد حول XML يمكنك البدء من هنا :
http://www.w3schools.com/xml/xml_whatis.asp

العناصر الأساسية الموجودة في System.Xml.Serialization :

XmlAttributeAttribute : يتم تحويل هذا العنصر على انه Attribute
XmlElementAttribute : يتم تحويل هذا العنصر على انه Element
XmlRootAttribute : لتحديد ال Root .
XmlTextAttribute : يتم تحويلها ل XML Text

فمثلاً لتحويل هذه الفئة إلى XML عن طريق عملية Serialization :
C#:
كود PHP:
class Members
{
[
XmlAttribute]
string Name;
[
XmlAttribute]
int Age;

vb.net:
كود PHP:
Class Members 
    
<XmlAttribute()> 
    
Private Name As String 
    
    
<XmlAttribute()> 
    
Private Age As Integer 
    
End 
Class 
والآن بعد اضافة اي نوع من البيانات على هذه الفئة ومن ثم عمل Serialization ستجد الناتج على شكل ملف XML السابق .
لم اتوسع في هذه الجزئية ولكن اتوقع أني قد اعود إليها بعد انتهاء الدروس الاساسية .

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


توقيع : khaledbelal



(أَفَأَمِنَ أَهْلُ الْقُرَى أَن يَأْتِيَهُمْ بَأْسُنَا بَيَاتاً وَهُمْ نَآئِمُونَ {97} أَوَ أَمِنَ أَهْلُ الْقُرَى أَن يَأْتِيَهُمْ بَأْسُنَا ضُحًى وَهُمْ يَلْعَبُونَ {98}
أَفَأَمِنُواْ مَكْرَ اللّهِ فَلاَ يَأْمَنُ مَكْرَ اللّهِ إِلاَّ الْقَوْمُ الْخَاسِرُونَ {99}).
سورة الأعراف.

رد مع اقتباس
إضافة رد


تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

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

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
الدرس الواحد والستون ADO.net - دورة .net 2008 khaledbelal دورة .NET 2008 من منتدى فيجوال بيسك للعرب 1 05-03-2011 10:47 PM
الدرس الرابع والعشرون : System.Object دورة .net 2008 khaledbelal دورة .NET 2008 من منتدى فيجوال بيسك للعرب 1 03-02-2011 03:55 PM
الدرس التاسع والثلاثون : Object Initializer Syntax دورة .net 2008 khaledbelal دورة .NET 2008 من منتدى فيجوال بيسك للعرب 0 02-25-2010 02:59 PM
الدرس الثلاثون : ال Collections دورة .net 2008 khaledbelal دورة .NET 2008 من منتدى فيجوال بيسك للعرب 0 02-25-2010 02:15 PM
الدرس الرابع عشر : this دورة .net 2008 khaledbelal دورة .NET 2008 من منتدى فيجوال بيسك للعرب 0 02-19-2010 07:58 PM

استضافة الحياة

الساعة الآن 05:25 AM.


Powered by vBulletin® v3.8.4, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. , TranZ By Almuhajir
النسخة الفضية
Ads Management Version 3.0.1 by Saeed Al-Atwi

SlamDesignzslamDesignzEdited by Riad Al-Ganah Team - جميع الحقوق محفوظة لشبكة رياض الجنة

Privacy Policy Valid XHTML 1.0 Transitional By SlamDesignz Valid CSS Transitional By SlamDesignz