Guest User

Untitled

a guest
May 24th, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.46 KB | None | 0 0
  1. public static void recordScore(ScoreModel scoreModel)
  2. {
  3. var path = "../../Media/Leaderboard/Leaderboard.xml";
  4. var saveModel = new LeaderboardModel();
  5.  
  6.  
  7. Stream fs = new FileStream(path, FileMode.Open);
  8. XmlReader reader = new XmlTextReader(fs);
  9. XmlSerializer serializer = new XmlSerializer(typeof(LeaderboardModel));
  10. if (serializer.CanDeserialize(reader))
  11. {
  12. LeaderboardModel o = (LeaderboardModel) serializer.Deserialize(reader);
  13. saveModel.ScoreModels.AddRange(o.ScoreModels);
  14. }
  15. fs.Close();
  16.  
  17. saveModel.ScoreModels.Add(scoreModel);
  18.  
  19. System.Xml.Serialization.XmlSerializer writer =
  20. new System.Xml.Serialization.XmlSerializer(typeof(LeaderboardModel));
  21.  
  22. System.IO.FileStream file = System.IO.File.Open(path, System.IO.FileMode.Append);
  23.  
  24. writer.Serialize(file, saveModel);
  25. file.Close();
  26. }
  27.  
  28. <?xml version="1.0"?>
  29. <LeaderboardModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  30. <ScoreModels>
  31. <ScoreModel>
  32. <Name>Test</Name>
  33. <GameSpeed>Normal</GameSpeed>
  34. <Score>11</Score>
  35. </ScoreModel>
  36. </ScoreModels>
  37. </LeaderboardModel><?xml version="1.0"?>
  38. <LeaderboardModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  39. <ScoreModels>
  40. <ScoreModel>
  41. <Name>Test</Name>
  42. <GameSpeed>Normal</GameSpeed>
  43. <Score>11</Score>
  44. </ScoreModel>
  45. </ScoreModels>
  46. </LeaderboardModel><?xml version="1.0"?>
  47. <LeaderboardModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  48. <ScoreModels>
  49. <ScoreModel>
  50. <Name>Test</Name>
  51. <GameSpeed>Normal</GameSpeed>
  52. <Score>11</Score>
  53. </ScoreModel>
  54. </ScoreModels>
  55. </LeaderboardModel><?xml version="1.0"?>
  56.  
  57. static void Main(string[] args)
  58. {
  59. LeaderboardModel lm = new LeaderboardModel();
  60. List<LeaderboardModelScoreModels> m = new List<LeaderboardModelScoreModels>();
  61. lm.ScoreModels = m;
  62.  
  63. for (int i= 0;i < 2;i++)
  64. {
  65. m.Add(new LeaderboardModelScoreModels() { ScoreModel = new LeaderboardModelScoreModelsScoreModel() { GameSpeed = "hi", Name = "hi", Score = 1 } });
  66. }
  67. System.Xml.Serialization.XmlSerializer writer =
  68. new System.Xml.Serialization.XmlSerializer(typeof(LeaderboardModel));
  69.  
  70. System.IO.FileStream file = System.IO.File.Open("D:\a.xml", System.IO.FileMode.Append);
  71.  
  72. writer.Serialize(file, lm);
  73. file.Close();
  74.  
  75. }
  76.  
  77. using System.Collections.Generic;
  78. [System.SerializableAttribute()]
  79. [System.ComponentModel.DesignerCategoryAttribute("code")]
  80. [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
  81. [System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable =
  82. false)]
  83. public partial class LeaderboardModel
  84. {
  85.  
  86. private List<LeaderboardModelScoreModels> scoreModelsField;
  87.  
  88. /// <remarks/>
  89. [System.Xml.Serialization.XmlElementAttribute("ScoreModels")]
  90. public List<LeaderboardModelScoreModels> ScoreModels
  91. {
  92. get
  93. {
  94. return this.scoreModelsField;
  95. }
  96. set
  97. {
  98. this.scoreModelsField = value;
  99. }
  100. }
  101. }
  102.  
  103.  
  104. [System.SerializableAttribute()]
  105. [System.ComponentModel.DesignerCategoryAttribute("code")]
  106. [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
  107. public partial class LeaderboardModelScoreModels
  108. {
  109.  
  110. private LeaderboardModelScoreModelsScoreModel scoreModelField;
  111.  
  112. /// <remarks/>
  113. public LeaderboardModelScoreModelsScoreModel ScoreModel
  114. {
  115. get
  116. {
  117. return this.scoreModelField;
  118. }
  119. set
  120. {
  121. this.scoreModelField = value;
  122. }
  123. }
  124. }
  125.  
  126.  
  127. [System.SerializableAttribute()]
  128. [System.ComponentModel.DesignerCategoryAttribute("code")]
  129. [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
  130. public partial class LeaderboardModelScoreModelsScoreModel
  131. {
  132.  
  133. private string nameField;
  134.  
  135. private string gameSpeedField;
  136.  
  137. private byte scoreField;
  138.  
  139. /// <remarks/>
  140. public string Name
  141. {
  142. get
  143. {
  144. return this.nameField;
  145. }
  146. set
  147. {
  148. this.nameField = value;
  149. }
  150. }
  151.  
  152. /// <remarks/>
  153. public string GameSpeed
  154. {
  155. get
  156. {
  157. return this.gameSpeedField;
  158. }
  159. set
  160. {
  161. this.gameSpeedField = value;
  162. }
  163. }
  164.  
  165. /// <remarks/>
  166. public byte Score
  167. {
  168. get
  169. {
  170. return this.scoreField;
  171. }
  172. set
  173. {
  174. this.scoreField = value;
  175. }
  176. }
  177. }
Add Comment
Please, Sign In to add comment