protected void Page_Load(object sender, EventArgs e) { songs = ServiceAccessor.MakeRequest <SongsRequest, SongsResponse>(new SongsRequest() { PartSongName = "", PartArtistName = "" }, "Songs"); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { var result = new SongsResponse(); var obj = JObject.Load(reader); result.version = obj["version"].Value <string>(); result.date = obj["date"].Value <DateTime>(); result.count = obj["count"].Value <int>(); result.songs = obj .Properties() .Where(x => !(new string[] { "version", "date", "count" }.Contains(x.Name))) .Select(x => new { Id = int.Parse(x.Name), Song = x }) .OrderBy(x => x.Id) .Select(x => x.Song.Value.ToObject <Song>()) .ToList(); return(result); }
internal static SongsResponse Songs(string partSongName, string partArtistName) { using (SqlConnection conn = GetConnection()) { SongsResponse ret = new SongsResponse() { Songs = new List <SongDTO>(), }; using (SqlCommand comm = new SqlCommand("SELECT song_id, song_name, a.artist_id, a.artist_name " + "FROM song s " + "JOIN artist a ON a.artist_id = s.artist_id " + "WHERE s.song_name LIKE @part_name AND " + "a.artist_name LIKE @part_artist", conn)) { comm.Parameters.AddWithValue("@part_name", "%" + partSongName + "%"); comm.Parameters.AddWithValue("@part_artist", "%" + partArtistName + "%"); using (SqlDataReader dr = comm.ExecuteReader()) { while (dr.Read()) { ret.Songs.Add(new SongDTO() { ArtistId = Guid.Parse(dr["artist_id"].ToString()), Id = Guid.Parse(dr["song_id"].ToString()), Name = dr["song_name"].ToString(), ArtistName = dr["artist_name"].ToString() }); } return(ret); } } } }
protected void Page_Load(object sender, EventArgs e) { songs = ServiceAccessor.MakeRequest <SongsRequest, SongsResponse>(new SongsRequest(), "Songs"); groups = ServiceAccessor.MakeRequest <GroupAllRequest, GroupAllResponse>(new GroupAllRequest(), "GroupAll"); }