EntityFramework segítséget kérhetek?
Ehhez próbálj csatlakozni management studioval:
(localdb)\v11.0
Ebben sincs benne a DB-d?
DE DE BENNE VAN! Hihetetlen! Mi a különbség eközött, meg a "." vagy a "(local)" között? Ezt az Entitiframework hozza létre, vagy mi?
Köszönöm szépen mindenkinek aki segített!
Úgy látom, csak én válaszoltam eddig. Szívesen.
Ez az úgynevezett LocalDB. Ez egy teljesen másik adatbázis szerver. VS2012-től ez az alapértelmezett. Az EF6.x is ebbe próbálja meg alapértelmezetten létrehozni az adatbázist.
A . és (local) pedig ugyanaz. (Azaz pl a .\SQLEXPRESS ugyanaz, mint a (local)\SQLEXPRESS)
Itt olvashatsz róla, vagy a googleön :)
Egyébként ha van megadva nálad connectionstring, de mégsem oda jön létre az adatbázis, akkor valamiért azt nem találja meg. A connectionstring neve ugyanaz kell legyen, mint a contexted neve. Vagy a context létrehozásakor kell megadni a nevet, ha más lenne.
Vao, a context névvel volt gond, ezt se tudtam, köszönöm szépen. Végre elkezdhetem rendesen a tutorialt!
Esetleg nem ismersz magyar dokumentációt a témában? Nem létfeltét, csak mégis jobb lenne :)
Még egy gyors kérdés, ha már így szóval tartottalak :)
Nem értem pontosan, hogy mikor jön létre az adatbázis (meg a táblák benne). Itt a kódom:
using (var ctx = new Context3())
{
Student stud = new Student() { StudentName = "New Student" };
ctx.Students.Add(stud);
ctx.SaveChanges();
}
Amikor beledebuggoltam azt láttam, hogy a ctx.Students.Add(stud); sornál amikor ez lefutott, létrejön az adatbázis (és nem a savechanges-nél). De mi van ha én azt szeretném, hogy ki van építve rendesen az objektumhierarchiám, és csak létre akarom hozni az adatbázist? Gondolom valamit be lehet írni a studio command window-jába, nem hiszem hogy az az egyetlen út az adatbázis létrehozáshoz, ha megfuttatok egy kódot, amiben hozzáadok egy entitást.
A segítséget utólag is és előre is köszönöm!
Magyar dokumentációt sajna nem ismerek. Egyébként nem kell beszúrni adatot, pl. ha egy sima selectet (firstordefault egy "táblán") hívsz, akkor is létrejön a db. Tehát mielőtt bármi adatbázisműveletet végezne ellenőrzi, hogy létezik-e a tábla.
Vagy a context.Database.CreateIfNotExists(); is valószínűleg létrehozza (a nevéből adódóan, bár sosem próbáltam)
Egyébként mért gond, ha első tényleges használatkor jön csak létre? Ez az automatikus létrehozás csak a fejlesztőnek könnyebbség, éles rendszereken egyébként is az adatbázis már adott szokott lenni, és az alkalmazásnak általában nincs is schmea módosító joga.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!