- Parsing xml in C#
- public class Friend
- {
- public string UID {get;set;}
- public string Provider {get;set;}
- public string PhotoUrl {get;set;}
- public string ProfileUrl {get;set;
- }
- <?xml version="1.0" encoding="utf-8"?>
- <socialize.getFriendsInfoResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:com:gigya:api http://socialize-api.gigya.com/schema" xmlns="urn:com:gigya:api">
- <statusCode>200</statusCode>
- <errorCode>0</errorCode>
- <statusReason>OK</statusReason>
- <callId>ae61ae53a6094364998206a196874d04</callId>
- <friends>
- <friend>
- <UID>_gid_Maj4wFcR3PA10EXENS/SfNhfszDYN9WRQzBgVyOPz0M=</UID>
- <isSiteUser>false</isSiteUser>
- <isSiteUID>false</isSiteUID>
- <identities>
- <identity>
- <provider>facebook</provider>
- <providerUID>100000378470436</providerUID>
- <isLoginIdentity>false</isLoginIdentity>
- <nickname>Afzal Raaz</nickname>
- <photoURL>https://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc4/70854_100000378470436_113535_s.jpg</photoURL>
- <thumbnailURL>https://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc4/70854_100000378470436_113535_q.jpg</thumbnailURL>
- <firstName>Afzal</firstName>
- <lastName>Raaz</lastName>
- <gender>m</gender>
- <profileURL>http://www.facebook.com/profile.php?id=100000378470436</profileURL>
- </identity>
- </identities>
- <nickname>Afzal Raaz</nickname>
- <photoURL>https://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc4/70854_100000378470436_113535_s.jpg</photoURL>
- <thumbnailURL>https://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc4/70854_100000378470436_113535_q.jpg</thumbnailURL>
- <firstName>Afzal</firstName>
- <lastName>Raaz</lastName>
- <gender>m</gender>
- <profileURL>http://www.facebook.com/profile.php?id=100000378470436</profileURL>
- </friend>
- <friend>
- <UID>_gid_T6vgh4MDshLvMYzi+Isxa0Ryf0ou2OJf+14pd6iwXlY=</UID>
- <isSiteUser>false</isSiteUser>
- <isSiteUID>false</isSiteUID>
- <identities>
- <identity>
- <provider>facebook</provider>
- <providerUID>100001052246730</providerUID>
- <isLoginIdentity>false</isLoginIdentity>
- <nickname>Ajaydeep Singh</nickname>
- <photoURL>https://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc4/203414_100001052246730_126837_s.jpg</photoURL>
- <thumbnailURL>https://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc4/203414_100001052246730_126837_q.jpg</thumbnailURL>
- <firstName>Ajaydeep</firstName>
- <lastName>Singh</lastName>
- <gender>m</gender>
- <profileURL>http://www.facebook.com/profile.php?id=100001052246730</profileURL>
- </identity>
- </identities>
- <nickname>Ajaydeep Singh</nickname>
- <photoURL>https://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc4/203414_100001052246730_126837_s.jpg</photoURL>
- <thumbnailURL>https://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc4/203414_100001052246730_126837_q.jpg</thumbnailURL>
- <firstName>Ajaydeep</firstName>
- <lastName>Singh</lastName>
- <gender>m</gender>
- <profileURL>http://www.facebook.com/profile.php?id=100001052246730</profileURL>
- </friend>
- </friends>
- </socialize.getFriendsInfoResponse>
- xsd.exe file.xml
- xsd.exe /c file.xsd
- XDocument doc = XDocument.Parse(@" ... XML ... ");
- Func<XElement, string, string> get =
- (el, name) => (string)el.Element(XName.Get(name, "urn:com:gigya:api"));
- var friends =
- from el in doc.Descendants(XName.Get("friend", "urn:com:gigya:api"))
- select new Friend
- {
- UID = get(el, "UID"),
- PhotoUrl = get(el, "photoURL"),
- ProfileUrl = get(el, "profileURL"),
- };
- List<Friend> friendList = friends.ToList();
- public class FriendList
- {
- public List<Friend> friends;
- public FriendList()
- {
- friends= new List<Friend>();
- }
- }
- public class Friend
- {
- public string UID {get;set;}
- public string Provider {get;set;}
- public string PhotoUrl {get;set;}
- public string ProfileUrl {get;set;}
- }
- Public class ParseFriends
- {
- FriendList p = new FriendList();
- public ReadFriends()
- {
- DirectoryInfo dir = new DirectoryInfo("../path to your xml file");
- FileInfo[] files = dir.GetFiles("*.*"); // read all xml file from a folder
- XmlDocument doc = new XmlDocument();
- foreach (FileInfo f in files)
- {
- Friend e = new Friend();
- doc.Load(f.FullName);
- e.UID = doc.GetElementsByTagName("UID")[0].InnerText;
- e.Provider = doc.GetElementsByTagName("Provider")[0].InnerText;
- e.PhotoUrl = doc.GetElementsByTagName("PhotoUrl")[0].InnerText;
- e.ProfileUrl = doc.GetElementsByTagName("ProfileUrl")[0].InnerText;
- p.empDetails.Add(e);
- }
- return p;
- }
- }