[ASP.NET] التعامل مع ملف xml في ال asp.net
الكاتب: nothing4u | 7 فبراير 2007
السلام عليكم ورحمة الله وبركاته..
توجد طرق كثيرة للتعامل مع ملفات الـ xml في الـ asp.net، ومهام عديده مثل الإضافة والتعديل والحذف والاستدعاء،
وسوف اتطرق هنا لطريقة الاستدعاء فقط.
نستطيع تسخير ملف الـ xml في برامجنا، وأقرب مثال هو ملف اللغة في السكربتات، فعندما تبرمج سكربت، فبالتأكيد
يهمك أن يتواجد ملف للّغة لتسهيل تحرير وتعديل اللغة والمصطلحات المستخدمه في برنامج فيما بعد.
وعلى الرغم من أن وجود ملفات للّغة وطريقة خاص في الـ asp.net 2005 إلا أن بها عيب كبير هو أن ملفات اللغة العامه
تتشفر مع الكود عند عمل معالجة للبرنامج وهكذا لا تستطيع التعديل على اللغة فيما بعد إلا بالرجوع مرة أخرى للبيئة
والتعديل وعمل معالجة مرة آخرى.
طبعاًً ملفات اللغة الي تستطيع إنشاءها في الـ 2005 لها طريقتين: الأولى ملفات لغة خاصة، والثانية عامة. التي تتشفر
هي العامة وهي التي تستخدمها غالباً وان شاء الله نتطرق لها في موضوع آخر.
نرجع لموضوعنا وهو ملفات الـ xml..
يمكنك أن تقوم بعمل ملف لغة في ملف xml، على سبيل المثال:
<language>
<HomePage Description="HomePage">
<WlcomeMsg>اهلا بك في الصفحة الأولى في الموقع</WlcomeMsg>
<LogIn>تسجيل دخول</LogIn>
</HomePage>
<AnotherPage Description="Page2">
<WlcomeMsg>اهلا بك في صفحة آخرى في الموقع</WlcomeMsg>
</AnotherPage>
</language>
اسم التبويب الرئيسي هو language، ويوجد في الملف تبويبتان فرعيتان هما:
HomePage و AnotherPage
التبويب الأول وهو HomePage سوف نضع به لغة الصفحة الأولى في الموقع
والتبويب AnotherPage هو لصفحة أخرى كمثال فقط نضع به لغة هذه الصفحة
في التبويب HomePage، يوجد لدينا سطرين للّغة: الأول رسالة ترحيب، والثاني تسجيل الدخول.
عندما نقوم باستدعائهم يبدأ الترقيم من الصفر يعني رسالة الترحيب سيكون ترقيمها هو السطر رقم صفر في التبويب
HomePage، أما رسالة تسجيل الدخول سيكون ترقميها هو السطر الأول في التبويب HomePage.
طريقة الاستدعاء
Dim XMLLngNList As XmlNodeList
Dim XMLLngNode As XmlNode
XMLLngDoc = New XmlDocument()
XMLLngDoc.Load("C:\Inetpub\wwwroot\Application\language\language.xml")
XMLLngNList = XMLLngDoc.SelectNodes("/language/HomePage")
For Each XMLLngNode In XMLLngNList
WlcomeLabel.Text = XMLLngNode.ChildNodes.Item(0).InnerText
SignIn.Text = XMLLngNode.ChildNodes.Item(1).InnerText
Next
هذا الكود في حدث تحميل الصفحة الرئيسية.
لاحط اننا حددنا مسار ملف ال xml وهو:
C:\Inetpub\wwwroot\Application\language\language.xml
كذلك اخترنا التوبيب الخاص بهذه الصفحة في الملف وهو HomePage:
XMLLngNList = XMLLngDoc.SelectNodes("/language/HomePage")
طبعاً language هنا ليست اسم الملف ولكن هي اسم التبويب الرئيسي
كذلك عندما أسندنا أسطر اللغة للأدوات التي نريد ظهورها بها بدأنا الترقيم من الصفر للسطر الأول والواحد للسطر الثاني وهكذا:
WlcomeLabel.Text = XMLLngNode.ChildNodes.Item(0).InnerText
هذا السطر الأول في ملف اللغة في التبويب HomePage وهو سطر رسالة الترحيب.
SignIn.Text = XMLLngNode.ChildNodes.Item(1).InnerText
هذا السطر الثاني في ملف اللغة في التبويب HomePage وهو سطر تسجيل الدخول.
أتمنى أن تكون الفكرة وصلت
في أمان الله وحفظه