public void Execute() { CollectionStorage storage = CollectionStorage.GetInstance(); IEnumerable <VinylRecord> result = storage.GetCollection().ToList <VinylRecord>(); if (searchName != "") { result = result.Where(item => item.Name.Contains(searchName)).Select(item => item); } if (fromPrice >= 0 && toPrice != 0) { result = result.Where(item => item.Price >= fromPrice && item.Price <= toPrice).Select(item => item); } if (searchArtistName != "") { result = result.Where(item => item.Artist.Contains(searchArtistName)).Select(item => item); } if (searchLable != "") { result = result.Where(item => item.Lable.Contains(searchLable)).Select(item => item); } storage.GetCollection().Clear(); foreach (var item in result) { storage.GetCollection().Add(item); } }
public MainWindow() { InitializeComponent(); this.invoker = new Invoker(); storage = CollectionStorage.GetInstance(); NewVinylRecord = new VinylRecord(); commandCollection = CommandCollection.GetInstance(); recordCollectionHistory = new RecordCollectionHistory(); recordCollectionHistory.History.Push(storage.SaveState()); AddRecord_grid.DataContext = NewVinylRecord; recordsDataGrid.ItemsSource = storage.GetCollection(); App.LanguageChanged += LanguageChanged; CultureInfo currLang = App.Language; foreach (var lang in App.Languages) { MenuItem menuLang = new MenuItem(); menuLang.Header = lang.DisplayName; menuLang.Tag = lang; menuLang.IsChecked = lang.Equals(currLang); menuLang.Click += ChangeLanguageClick; Main_menu.Items.Add(menuLang); } }
//private DateTime? ConvertDurationToDateTime(string duration) //{ // if(duration == "") // { // return null; // } // string[] recordDuration = new string[2]; // int i = 0; // foreach (var item in duration.Split(new char[] { ':' })) // { // recordDuration[i++] = item; // } // return new DateTime(0, 0, 0, 0, Convert.ToInt32(recordDuration[0]), Convert.ToInt32(recordDuration[1])); //} #endregion private void SaveToJson_button_Click(object sender, RoutedEventArgs e) { try { if (storage.GetCollection().Count != 0) { storage.SerializeToJSON("data/json/RecordsData.json"); MessageBox.Show("Serialization Complete!"); } else { MessageBox.Show("Collection must be filled by data"); } } catch (Exception exc) { MessageBox.Show(exc.Message); } }
public void TestIfCollectionReturnsData() { var storage = new CollectionStorage(); var testEntity = new TestEntity { TestLongProperty = 1, TestStringProperty = "someString" }; storage.GetCollection <TestEntity>().Add(testEntity); using var readonlyStorage = new InMemoryReadonlyStorage(storage); var collection = readonlyStorage.Set <TestEntity>(); Assert.AreEqual(1, collection.Count()); var entity = collection.FirstOrDefault(); Assert.IsNotNull(entity); Assert.AreEqual(testEntity.TestStringProperty, entity.TestStringProperty); Assert.AreEqual(testEntity.TestLongProperty, entity.TestLongProperty); }