示例#1
0
        public void AddKnjiga(Knjiga k)
        {
            Knjiga b = db.Knjigas.Find(k.Id);

            if (b != null)
            {
                b.Id         = k.Id;
                b.AutorId    = k.AutorId;
                b.ISBN       = k.ISBN;
                b.Naslov     = k.Naslov;
                b.Objavljena = k.Objavljena;
                b.Opis       = k.Opis;
                if (k.Slika != null)
                {
                    b.Slika = k.Slika;
                }

                db.SaveChanges();

                string[]          arr        = k.Kategorijas.Select(y => y.Naziv).ToArray();
                List <Kategorija> kategorije = (from p in db.Kategorijas where arr.Any(x => p.Naziv.Contains(x)) select p).ToList();
                eShelvesEntities  ctx        = new eShelvesEntities();
                ctx.usp_RemoveKnjigaKategorijas(b.Id);
                foreach (Kategorija kat in kategorije)
                {
                    ctx.usp_addKnjigaKategorija(b.Id, kat.Id);
                }
            }
            else
            {
                string[]          arr        = k.Kategorijas.Select(y => y.Naziv).ToArray();
                List <Kategorija> kategorije = (from p in db.Kategorijas where arr.Any(x => p.Naziv.Contains(x)) select p).ToList();
                k.Kategorijas = kategorije;
                db.Knjigas.Add(k);
                db.SaveChanges();
            }
        }