internal static void AddPhone(string documenPath, PhoneViewModel phone)
 {
     var root = XDocument.Load(documenPath).Root;
     root.Add(new XElement("phone",
         new XElement("vendor", phone.Vendor),
         new XElement("model", phone.Model),
         new XElement("year", phone.Year),
         new XElement("image", phone.ImagePath),
         new XElement("os",
                 new XElement("name", phone.OS.Name),
                 new XElement("version", phone.OS.Name),
                 new XElement("manufacturer", phone.OS.Manufacturer))));
     root.Document.Save(documenPath);
 }
示例#2
0
        internal static void AddPhone(string documenPath, PhoneViewModel phone, string storeName)
        {
            var root       = XDocument.Load(documenPath + "phones.xml").Root;
            var newPhoneId = Guid.NewGuid();

            root.Add(
                new XElement("phone",
                             new XElement("id", newPhoneId),
                             new XElement("vendor", phone.Vendor),
                             new XElement("model", phone.Model),
                             new XElement("year", phone.Year),
                             new XElement("image", phone.ImagePath),
                             new XElement("os",
                                          new XElement("id", phone.OS.Id)
                                          //new XElement("name", phone.OS.Name),
                                          //new XElement("version", phone.OS.Name),
                                          //new XElement("manufacturer", phone.OS.Manufacturer)))
                                          )
                             )
                );
            root.Document.Save(documenPath + "phones.xml");
        }
示例#3
0
 public StoreViewModel()
 {
     this.PhonesStoreDocumentPath = "..\\..\\phones.xml";
     this.newPhoneViewModel = new PhoneViewModel();
 }
示例#4
0
 public PhonesStoreViewModel()
 {
     this.PhonesStoreDocumentPath = "..\\..\\xml-data\\";
     this.newPhoneViewModel       = new PhoneViewModel();
 }
示例#5
0
        internal static void RemovePhone(string documenPath, PhoneViewModel phone, string storeName)
        {
            var root = XDocument.Load(documenPath).Root;
            XElement storeElement = null;
            foreach (var store in root.Elements("store"))
            {
                if (store.Element("name").Value.ToLower() == storeName.ToLower())
                {
                    storeElement = store.Element("phones");
                    break;
                }
            }
            if (storeElement == null)
            {
                throw new ArgumentException(String.Format("Store with name {0} does not exist", storeName));
            }


            foreach (var phoneElement in storeElement.Elements("phone"))
            {
                if (phoneElement.Element("vendor").Value.ToLower() == phone.Vendor.ToLower()&&
                    phoneElement.Element("model").Value.ToLower() == phone.Model.ToLower()&&
                    phoneElement.Element("year").Value.ToLower() == phone.Year.ToString().ToLower())
                {
                    phoneElement.Remove();
                    root.Document.Save(documenPath);
                    break;
                }
            }
        }
示例#6
0
 internal static void AddPhone(string documenPath, PhoneViewModel phone, string storeName)
 {
     var root = XDocument.Load(documenPath).Root;
     XElement storeElement = null;
     foreach (var store in root.Elements("store"))
     {
         if (store.Element("name").Value.ToLower()==storeName.ToLower())
         {
             storeElement = store.Element("phones");
             break;
         }
     }
     if (storeElement==null)
     {
         throw new ArgumentException(String.Format("Store with name {0} does not exist", storeName));
     }
     storeElement.Add(new XElement("phone",
         new XElement("vendor", phone.Vendor),
         new XElement("model", phone.Model),
         new XElement("year", phone.Year),
         new XElement("image", phone.ImagePath),
         new XElement("os",
                 new XElement("name", phone.OS.Name),
                 new XElement("version", phone.OS.Name),
                 new XElement("manufacturer", phone.OS.Manufacturer))));
     root.Document.Save(documenPath);
 }