Programmer نشر 29 نوفمبر 2015 أرسل تقرير نشر 29 نوفمبر 2015 أعمل على برنامج لإدارة قسم في مؤسسة وأحتاج لتخزين بيانات على ملف XML في #C علمًا أن البيانات عبارة عن Objects قمت بإنشائها كيف يمكن تخزينها؟ اقتباس
0 Lujain Maaz نشر 29 نوفمبر 2015 أرسل تقرير نشر 29 نوفمبر 2015 (معدل) يتم تخزين الكائنات Objects في ملفات XML باستخدام XmlWriter. مثلًا ليكن لدينا الصف Employee يحوي على مجموعة من الـ Attributes (المعرفID، الاسم الأول، الاسم الأخير، الراتب):class Employee { int _id; string _firstName; string _lastName; int _salary; إنشاء الـ constructor:public Employee(int id, string firstName, string lastName, int salary) { this._id = id; this._firstName = firstName; this._lastName = lastName; this._salary = salary; }إنشاء get Methods كما في المثال التالي:public int Id { get { return _id; } } public string FirstName { get { return _firstName; } } public string LastName { get { return _lastName; } } public int Salary { get { return _salary; } } الآن في الدالة main سيتم إنشاء كائنات Objects من الصف Employee:static void Main() { Employee[] employees = new Employee[4]; employees[0] = new Employee(1, "David", "Smith", 10000); employees[1] = new Employee(3, "Mark", "Drinkwater", 30000); employees[2] = new Employee(4, "Norah", "Miller", 20000); employees[3] = new Employee(12, "Cecil", "Walker", 120000);تم تخزين الكائنات في مصفوفة من نوع Employee وذلك ليتم كتابة وتخزين عناصرها على ملف XML.الآن إنشاء كائن من الصف XMLWriter وتمرير اسم الملف المراد إنشاءه لتخزين الكائنات Objects:using (XmlWriter writer = XmlWriter.Create("employees.xml")) {....استدعي الدالة WriterStartDocument لتحديد بداية الملف:writer.WriteStartDocument();باستخدام الدالة WriteStartElement يتم تحديد وسم البداية الذي سيكتب على الملف وفي المثال أعلاه سيكون "Employees": writer.WriteStartElement("Employees");إنشاء حلقة تكرار foreach وكتابة عناصر المصفوفة Employee ضمن الوسم "Employee" المتضمن في الوسم "Employees"foreach (Employee employee in employees) { writer.WriteStartElement("Employee"); writer.WriteElementString("ID", employee.Id.ToString()); writer.WriteElementString("FirstName", employee.FirstName); writer.WriteElementString("LastName", employee.LastName); writer.WriteElementString("Salary", employee.Salary.ToString()); writer.WriteEndElement(); } في النهاية استدعاء الدالة WriteEndElemnt ثم WriteEndDocument:writer.WriteEndElement(); writer.WriteEndDocument(); يوجد أيضًا طرق أخرى لتخزين الـ Objects في XML يمكنك الاطلاع عليها من هنا تم التعديل في 29 نوفمبر 2015 بواسطة Lujain اقتباس
السؤال
Programmer
أعمل على برنامج لإدارة قسم في مؤسسة وأحتاج لتخزين بيانات على ملف XML في #C علمًا أن البيانات عبارة عن Objects قمت بإنشائها كيف يمكن تخزينها؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.