Ejemplo n.º 1
0
        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);
            }
        }
Ejemplo n.º 2
0
        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);
            }
        }
Ejemplo n.º 3
0
        //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);
        }