public IVendor GetVendor(int vendorId)
        {
            var vendor = new Vendor();

            using (var command = MainConnection.CreateCommand())
            {
                command.CommandText = "SELECT Name FROM tAccount WHERE ID = @ID";
                command.Parameters.AddWithValue("ID", vendorId);
                vendor.Name = command.ExecuteScalar()?.ToString();
            }

            using (var command = MainConnection.CreateCommand())
            {
                command.CommandText =
                    @"SELECT
              m.Name,
              m.Address,
              d.[Day],
              m.StartTime,
              m.EndTime
            FROM
              tMarket m
            INNER JOIN tVendorMarket vm ON
              vm.MarketID = m.ID
            INNER JOIN tDay d ON
              d.ID = m.DayOfWeek
            WHERE
              vm.AccountID = @ID";
                command.Parameters.AddWithValue("ID", vendorId);

                using (var reader = command.ExecuteReader())
                {
                    vendor.Markets = new List <IMarket>();
                    while (reader.Read())
                    {
                        var market = new Market();
                        market.Name      = reader.GetString(reader.GetOrdinal("Name"));
                        market.Address   = reader.GetString(reader.GetOrdinal("Address"));
                        market.Day       = reader.GetString(reader.GetOrdinal("Day"));
                        market.StartTime = reader.GetString(reader.GetOrdinal("StartTime"));
                        market.EndTime   = reader.GetString(reader.GetOrdinal("EndTime"));
                        vendor.Markets.Add(market);
                    }
                }
            }

            return(vendor);
        }