コード例 #1
0
 /// <summary>
 /// Обновява базата данни.
 /// </summary>
 public static void RefreshDataBase()
 {
     NowPlaying.OnPropertyChanged("Songs");
     MySongs.OnPropertyChanged("Bands");
     MySongs.OnPropertyChanged("Albums");
     MySongs.OnPropertyChanged("Songs");
     PlayList.OnPropertyChanged("PlayList");
 }
コード例 #2
0
 public MainViewModel()
 {
     MySongs = new MySongs()
     {
         Songs = new ObservableCollection <Song>()
         {
             new Song("Hey Jude", "The Beatles")
         }
     };
 }
コード例 #3
0
    public void Show()
    {
        MySongs mySongs = new MySongs();

        MySong[] songs = mySongs.songs;

        Array.ForEach(songs,
                      song => Console.WriteLine("[{0}, ({1})]",
                                                song.Title, string.Join(", ",
                                                                        (song.Tags ?? new string[] {})))
                      );
    }
コード例 #4
0
    public void Show()
    {
        MySongs mySongs = new MySongs();

        var tags = (mySongs.songs)
                   .Select(song => song.Tags)
                   .Where(tags => tags != null)
                   .SelectMany(tag => tag);

        Console.WriteLine("[{0}]",
                          string.Join(", ", tags));
    }
コード例 #5
0
    public void Show()
    {
        MySongs mySongs = new MySongs();
        MyUtils myUtils = new MyUtils();

        var tags = (mySongs.songs)
                   .Select(song => song.Tags)
                   .Where(tags => tags != null)
                   .SelectMany(tag => tag);

        Console.WriteLine("[{0}]", string.Join(", ",
                                               myUtils.Unique(tags.ToArray())));
    }
コード例 #6
0
    public void Show()
    {
        MySongs mySongs = new MySongs();

        MySong[] songs = mySongs.songs;

        var tagss = songs.Select(song => song.Tags);

        foreach (var tags in tagss)
        {
            Console.WriteLine("[{0}]",
                              string.Join(", ", (tags ?? new string[] {})));
        }
    }
コード例 #7
0
    public void Show()
    {
        MySongs mySongs = new MySongs();

        var tagss = (mySongs.songs)
                    .Select(song => song.Tags)
                    .Where(tags => tags != null);

        foreach (var tags in tagss)
        {
            Console.WriteLine("[{0}]",
                              string.Join(", ", tags));
        }
    }
コード例 #8
0
        public async Task <IActionResult> ToPlaylist(HybridModel song)
        {
            var CurrentUser = await _user.GetUserAsync(User);

            MySongs playlistSong = new MySongs();

            playlistSong.SongID    = song.songModel.ID;
            playlistSong.UserEmail = CurrentUser.Email;

            if (ModelState.IsValid)
            {
                _MySongsContext.Add(song.songModel);
                await _MySongsContext.SaveChangesAsync();
            }
            return(RedirectToAction(nameof(Index)));
        }
コード例 #9
0
    public void Show()
    {
        // 1. Data source.
        var songs = new MySongs().songs;

        // 2. Query creation.
        var tagss =
            from song in songs
            where song.Tags != null
            from tag in song.Tags
            select tag;

        // 3. Query execution.
        var tags = tagss.Distinct();

        Console.WriteLine("[{0}]",
                          string.Join(", ", tags));
    }
コード例 #10
0
    public async Task Sender(ChannelWriter <string> writer)
    {
        MySongs mySongs = new MySongs();

        await Task.Run(() =>
                       Parallel.ForEach(mySongs.songs, song => {
            if (song.Tags != null)
            {
                Parallel.ForEach(song.Tags, tag => {
                    writer.WriteAsync(tag);
                });
            }
            ;
        })
                       );

        Task.WaitAll();
        writer.Complete();
        return;
    }
コード例 #11
0
    public void Show()
    {
        MySongs mySongs = new MySongs();

        var parameter  = Expression.Parameter(typeof(MySong), "MySong");
        var type       = Type.GetType("MySong").GetProperty("Tags");
        var property   = Expression.Property(parameter, type);
        var constant   = Expression.Constant(null);
        var comparison = Expression.NotEqual(property, constant);
        var lambda     = Expression.Lambda <Func <MySong, bool> >(comparison, parameter);
        Func <MySong, bool> withTagsFilterExpression = lambda.Compile();

        var filteredSongs = (mySongs.songs)
                            .Where(withTagsFilterExpression);

        foreach (var song in filteredSongs)
        {
            Console.WriteLine("[{0}]", song);
        }
    }
コード例 #12
0
    public async Task Sender(ChannelWriter <string> writer)
    {
        MySongs mySongs = new MySongs();

        Array.ForEach(mySongs.songs, song => {
            if (song.Tags != null)
            {
                Array.ForEach(song.Tags, async(tag) => {
                    await writer.WriteAsync(tag);
                });
            }
            ;
        });

        writer.Complete();

        // since all previous await wrapped in lambda,
        // we need to await something.
        await Task.FromResult(1);

        return;
    }
コード例 #13
0
        public IActionResult MySongs()
        {
            var myList = new MySongs();

            return(View(myList));
        }