Exemple #1
0
        /// <summary>
        /// Метод добавления аудио в БД
        /// </summary>
        /// <param name="audio">Аудиозапись</param>
        /// <returns>Возвращает true, если успешно</returns>
        public bool AddAudio(SocialNetworkAudio audio)
        {
            using (db = provider.GetProvider())
            {
                db.SocialNetworkUserAudios.Add(audio);
                db.SaveChanges();

                return(true);
            }
        }
Exemple #2
0
        private async void LoadAudiosVK()
        {
            await Task.Run(() =>
            {
                enabledLoadButton = false;

                try
                {
                    // Нужно выбрать только цифры из адреса вк
                    int UserID = 0;
                    int.TryParse(string.Join("", selectedSocialNetwork.WebAddress.Where(c => char.IsDigit(c))), out UserID);

                    var user = VkLogic.MyApi.UserLogic.GetUser(UserID);
                    if (!user.IsClosed.Value)
                    {
                        var audiosVK = VkLogic.MyApi.AudiosLogic.GetAudious(UserID);

                        foreach (var item in audiosVK)
                        {
                            // Ищем аудио в БД
                            var findAudio = logic.GroupLogic.GetOneGroup(selectedSocialNetwork.Id, item.Title).Result;

                            // Если группа не найдена в БД, то добавь ее в БД
                            if (findAudio == null)
                            {
                                SocialNetworkAudio audio = new SocialNetworkAudio()
                                {
                                    SocialNetworkUserID = selectedSocialNetwork.Id,
                                    ArtistName          = item.Artist,
                                    AudioName           = item.Title,
                                    Duration            = item.Duration,
                                    DateAddedOnDB       = System.DateTime.Now,
                                    DateAddedSocNetw    = item.Date
                                };

                                logic.AudiosLogic.AddAudio(audio);
                            }
                        }
                    }
                    else
                    {
                        MessageBox.Show("Профиль закрытый!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error, MessageBoxResult.No, MessageBoxOptions.ServiceNotification);
                    }
                }
                catch (NullReferenceException)
                {
                    MessageBox.Show("Авторизируйтесь в социальной сети!", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error, MessageBoxResult.No, MessageBoxOptions.ServiceNotification);

                    return;
                }
                catch (Exception ex)
                {
                    MessageBox.Show($"{ex.Message}", "Ошибка!", MessageBoxButton.OK, MessageBoxImage.Error, MessageBoxResult.No, MessageBoxOptions.ServiceNotification);

                    return;
                }
                finally
                {
                    enabledLoadButton = true;
                    LoadAudios();
                }
            });
        }