mirror of
				https://github.com/Nioux/AideDeJeu.git
				synced 2025-10-31 07:26:09 +00:00 
			
		
		
		
	Dispose
This commit is contained in:
		
							parent
							
								
									ea491f8bcc
								
							
						
					
					
						commit
						f73d89f4b4
					
				
					 2 changed files with 20 additions and 54 deletions
				
			
		|  | @ -233,46 +233,29 @@ namespace AideDeJeu.ViewModels | |||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|         private string MonstersJson | ||||
|         private IEnumerable<Monster> _AllMonsters = null; | ||||
|         private IEnumerable<Monster> AllMonsters | ||||
|         { | ||||
|             get | ||||
|             { | ||||
|                 var assembly = typeof(AboutViewModel).GetTypeInfo().Assembly; | ||||
|                 //var names = assembly.GetManifestResourceNames(); | ||||
|                 using (var stream = assembly.GetManifestResourceStream("AideDeJeu.monsters.json")) | ||||
|                 if (_AllMonsters == null) | ||||
|                 { | ||||
|                     using (var reader = new System.IO.StreamReader(stream)) | ||||
|                     var serializer = new DataContractJsonSerializer(typeof(IEnumerable<Monster>)); | ||||
|                     var assembly = typeof(AboutViewModel).GetTypeInfo().Assembly; | ||||
|                     //var names = assembly.GetManifestResourceNames(); | ||||
|                     using (var stream = assembly.GetManifestResourceStream("AideDeJeu.monsters.json")) | ||||
|                     { | ||||
|                         return reader.ReadToEnd(); | ||||
|                         _AllMonsters = serializer.ReadObject(stream) as IEnumerable<Monster>; | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         private IEnumerable<Monster> _Monsters = null; | ||||
|         private IEnumerable<Monster> Monsters | ||||
|         { | ||||
|             get | ||||
|             { | ||||
|                 if (_Monsters == null) | ||||
|                 { | ||||
|                     DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(IEnumerable<Monster>)); | ||||
|                     MemoryStream stream = new MemoryStream(); | ||||
|                     var writer = new StreamWriter(stream); | ||||
|                     writer.Write(MonstersJson); | ||||
|                     writer.Flush(); | ||||
|                     stream.Seek(0, SeekOrigin.Begin); | ||||
| 
 | ||||
|                     _Monsters = serializer.ReadObject(stream) as IEnumerable<Monster>; | ||||
|                 } | ||||
|                 return _Monsters; | ||||
|                 return _AllMonsters; | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         public IEnumerable<Monster> GetMonsters(string category, string type, string minPower, string maxPower, string size, string legendary, string source) | ||||
|         { | ||||
|             var powerComparer = new PowerComparer(); | ||||
|             return Monsters.Where(monster => | ||||
|             return AllMonsters.Where(monster => | ||||
|                             monster.Type.Contains(type) && | ||||
|                             (string.IsNullOrEmpty(size) || monster.Size.Equals(size)) && | ||||
|                             monster.Source.Contains(source) && | ||||
|  |  | |||
|  | @ -179,45 +179,28 @@ namespace AideDeJeu.ViewModels | |||
|         { | ||||
|         } | ||||
| 
 | ||||
|         private string SpellsJson | ||||
|         private IEnumerable<Spell> _AllSpells = null; | ||||
|         private IEnumerable<Spell> AllSpells | ||||
|         { | ||||
|             get | ||||
|             { | ||||
|                 var assembly = typeof(AboutViewModel).GetTypeInfo().Assembly; | ||||
|                 //var names = assembly.GetManifestResourceNames(); | ||||
|                 using (var stream = assembly.GetManifestResourceStream("AideDeJeu.spells.json")) | ||||
|                 if(_AllSpells == null) | ||||
|                 { | ||||
|                     using (var reader = new System.IO.StreamReader(stream)) | ||||
|                     var serializer = new DataContractJsonSerializer(typeof(IEnumerable<Spell>)); | ||||
|                     var assembly = typeof(AboutViewModel).GetTypeInfo().Assembly; | ||||
|                     //var names = assembly.GetManifestResourceNames(); | ||||
|                     using (var stream = assembly.GetManifestResourceStream("AideDeJeu.spells.json")) | ||||
|                     { | ||||
|                         return reader.ReadToEnd(); | ||||
|                         _AllSpells = serializer.ReadObject(stream) as IEnumerable<Spell>; | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         private IEnumerable<Spell> _Spells = null; | ||||
|         private IEnumerable<Spell> Spells | ||||
|         { | ||||
|             get | ||||
|             { | ||||
|                 if(_Spells == null) | ||||
|                 { | ||||
|                     DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(IEnumerable<Spell>)); | ||||
|                     MemoryStream stream = new MemoryStream(); | ||||
|                     var writer = new StreamWriter(stream); | ||||
|                     writer.Write(SpellsJson); | ||||
|                     writer.Flush(); | ||||
|                     stream.Seek(0, SeekOrigin.Begin); | ||||
| 
 | ||||
|                     _Spells = serializer.ReadObject(stream) as IEnumerable<Spell>; | ||||
|                 } | ||||
|                 return _Spells; | ||||
|                 return _AllSpells; | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         public IEnumerable<Spell> GetSpells(string classe, string niveauMin, string niveauMax, string ecole, string rituel, string source) | ||||
|         { | ||||
|             return Spells.Where(spell => | ||||
|             return AllSpells.Where(spell => | ||||
|                             (int.Parse(spell.Level) >= int.Parse(niveauMin)) && | ||||
|                             (int.Parse(spell.Level) <= int.Parse(niveauMax)) && | ||||
|                             spell.Type.Contains(ecole) && | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Yan Maniez
						Yan Maniez