Avatar billede kagejoe Nybegynder
16. april 2013 - 10:44 Der er 1 løsning

Undlad ligheder mellem to udtræk

Hej

Jeg er i gang med mit første database projekt og er kommet lidt på dybt vand.

Jeg har lavet to udtræk af nogle sangID'er.
1: Alle sange i databasen.
2: Alle sange med stemmer på.

Herefter vil jeg gerne sammenligne de to udtræk og kun få de sange ud der ikke er stemmer på. Jeg har fået det til at virke lokalt, men når jeg smider det op på azurewebsites virker det ikke.

Foreløbig ser mine udtræk sådan ud:
public ActionResult GetRandomSongsWithoutVotes(int barId, int noOfSongs)
{
    using (var repo = new juARCFullModelContainer())
    {
        try
        {
            var SongsWithVotes = from vote in repo.VoteSet
                                where vote.BarBarId == barId
                                group vote by new { SongId = vote.SongSongId, BarId = vote.BarBarId }
                                into grp
                                select new { SongId = grp.Key.SongId };

            var AllSongs = from songs in repo.SongSet
                          select songs.SongId;

            var SongsWithoutVotes = AllSongs.Where(
                                    song1 => !SongsWithVotes.Select(
                                    songs => songs.SongId).Contains(song1)
                                      );

            return Json(new { SongsWithoutVotes = SongsWithoutVotes.ToArray() }, JsonRequestBehavior.AllowGet);
        }
        catch (Exception)
        {
            throw new HttpResponseException(HttpStatusCode.NotFound);
        }
    }
}

Jeg er ret sikker på det er mine lambda udtryk ved "SongsWithoutVotes" der fejler, men hvorfor forstår jeg ikke?
Alt ris/ros omkring udførsel af udtrækne modtages gerne :D
Avatar billede kagejoe Nybegynder
06. juni 2013 - 16:34 #1
done
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester