Avatar
Goldminer
Člen
Avatar
Goldminer:

Zdravím,
ve svém wpf programu používám lokální databázi mdf, pracuji s Ado.Net Data Entity Model.Nacitani dat z ni funguje parádně. Ale pokud chci přidat data do prázdné tabulky Objednávky(sloupce: id,cena,cislos­tolu,nazev,za­placeno), data to nepřidá. Zde je můj kód. Původně jsem chtěl přidávat data z ListBoxu, ale nejdříve jsem testovat obyčejně data natvrdo.

public void VlozObjednavkuDb(int Cena, int CisloStolu, int zaplacena, string nazev)
   {
       using (JidelnicekEntities4 databaze = new JidelnicekEntities4())
       {
           try{

           Objednavky objednavka = new Objednavky
               {
                   CisloStolu = CisloStolu,
                   Cena = Cena,
                   Zaplacena = zaplacena,
                   Nazev = nazev
               };
           databaze.Objednavkies.Add(objednavka);
           databaze.SaveChanges();
       }
           catch (Exception) { MessageBox.Show("Ojednavka nebyla provedena"); }

       }
   }

přidávám :

VlozObjednavkuDb(1, 1, 0, "p");

Tabulka zůstává prázdná.
Děkuji za jakékoliv rady co s tím.
Goldminer

 
Odpovědět 1.2.2015 17:53
Avatar
Odpovídá na Goldminer
sadlomaslox25:

podle me klasicka chyba v tom ze se divas do spatne db.

nejspis pouzivas relativni cestu k db v connection stringu (napr. |DataDirectory|) a na mdf souboru mas nastavene copy to output: always. zkusebni data sis pridal do DB ktera je na urovni projektu ale kodem ukladas do jine db, ktera se ti prepisuje pri kazde kompilaci projektu.

 
Nahoru Odpovědět 1.2.2015 18:06
Avatar
Goldminer
Člen
Avatar
Odpovídá na sadlomaslox25
Goldminer:

Zkousel jsem nastavit na NEVER , ale pak databaze nefunguje ani pri nacitani. Podporuje to tvou verzi?

 
Nahoru Odpovědět 1.2.2015 18:24
Avatar
Goldminer
Člen
Avatar
Goldminer:

Respektive, jak bys to vyřešil ?

 
Nahoru Odpovědět 1.2.2015 18:29
Avatar
Odpovídá na Goldminer
sadlomaslox25:

no cele je to hlavne o tom ze zadny problem neni protoze vsechno funguje :D

v ramci testovani muzes zmenit ConnectionString z relativni na absolutni cestu ale pak je treba myslet na to ze v produkci se to musi zmenit zpatky na relativni cestu.

 
Nahoru Odpovědět 1.2.2015 18:53
Avatar
Goldminer
Člen
Avatar
Goldminer:

Koukal jsem na ConnectionString a myslim, ze je dobre a hlavne, mi to data nacita, ale psat tam nejde, dobre, tak jak mam nastavit ConnectionString teda? S touhle Lokalni Databazi jsem dneska zacal, jsem v tom jeste naprostej zelenáč.

 
Nahoru Odpovědět 1.2.2015 18:55
Avatar
Odpovídá na Goldminer
sadlomaslox25:

v app.config je ulozeny CS a tam se da zmenit.

 
Nahoru Odpovědět 1.2.2015 19:01
Avatar
Odpovídá na Goldminer
Michal Štěpánek:

nemůže být problém tady?

Objednavky objednavka = new Objednavky
                {
                    CisloStolu = CisloStolu,
                    Cena = Cena,
                    Zaplacena = zaplacena,
                    Nazev = nazev
                };

podle mě neví kde má vzít CisloStolu a Cena a k čemu to přiřadit, když je máš na obou stranách stejně psané ...

Nahoru Odpovědět 1.2.2015 21:05
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Michal Štěpánek
Jan Vargovský:

Tohle v C# chyba není :)

Každopádně se takovým stylem parametry nepojmenovávají.

Editováno 1.2.2015 21:10
 
Nahoru Odpovědět 1.2.2015 21:10
Avatar
Odpovídá na Goldminer
Michal Štěpánek:

A ten středník za tou složenou závorkou má být?

Nahoru Odpovědět 2.2.2015 8:03
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Goldminer
Člen
Avatar
Goldminer:

Mám tam vážně |DataDirectory| jak mám ale nastavit connection string, aby to šlo?

 
Nahoru Odpovědět 4.2.2015 20:48
Avatar
Odpovídá na Goldminer
sadlomaslox25:

misto |DataDirectory|\da­tabaze.mdf das C:\dokumenty\muj­projekt\databa­ze.mdf. Ale nezapomen ze pri publikaci to musis prepnout zpatky na relativni cestu.

 
Nahoru Odpovědět 5.2.2015 7:51
Avatar
Odpovídá na Goldminer
Michal Štěpánek:

pokud ti to data načítá, tak je connectionstring správně. Podle mě ale nemá být za tou složenou závorkou ten středník, jak jsem psal výše...

Nahoru Odpovědět 5.2.2015 8:37
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 13 zpráv z 13.