Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 27075|Atsakyti: 0

[Šaltinis] "EF Core Series 2" apima "OnModelCreation", kuria indeksus naudodama atspindžius ir kt.

[Kopijuoti nuorodą]
Publikuota: 2020-9-22 10:57:19 | | | |
Indeksavimas yra įprasta sąvoka keliose duomenų saugyklose. Nors jų diegimas duomenų saugykloje gali skirtis, jie taip pat gali būti naudojami stulpeliais pagrįstoms peržvalgoms (arba stulpelių rinkiniui), kad jos būtų efektyvesnės.

Hipersaito prisijungimas matomas.

Ką žinoti:

.net/c# naudoja atspindžio dinaminio vykdymo metodą
https://www.itsvse.com/thread-4771-1-1.html

C# atspindys gauna objekto ypatybės rodomą pavadinimą
https://www.itsvse.com/thread-3219-1-1.html

Entity Framework 6 galite įtraukti indeksus pridėdami atributus į laukus, tačiau ef branduolyje negalite naudoti atributų indeksams įtraukti į lentelės laukus, todėl turite perrašyti OnModelCreating metodą ir parašyti atitinkamas taisykles po vieną.

Šiuo metodu reikia parašyti skirtingas lenteles, kurias nėra lengva prižiūrėti, o skaitomumas yra per prastas, todėl kiekvienos lentelės rodyklę rašome savo metodu, kad palengvintume atnaujinimus ir paieškas.

Naudojamas EF branduolysKodas FristSchema sukuria lentelės struktūrą.

Pirmiausia sukurkite naują "IOnModelCreate" sąsają, kodas yra toks:

Mes apibrėžiame objektą skirtingų lentelių klasės apačioje ir paveldime sąsają, pavyzdžiui:

AccountSetting kodas:
EmailSentHistorySetting kodas:

Savo DbContext konteksto objekte perrašykite OnModelCreating metodą, naudokite atspindžio metodą ir savo ruožtu vykdykite OnModelCreating metodą, kad sukurtumėte indeksus, ryšius, duomenų sėjimą ir kt.

OnModelCreating metodas yra toks:



Vykdykite komandą Kurti perkėlimą, kad sugeneruotumėte šį kodą:



Atradimas, indeksai gali būti sėkmingai sukurti naudojant refleksijos metodus ir kt.

(Pabaiga)





Ankstesnis:.NET Core įgyvendina paskirstyto užrakto principo analizę, pagrįstą Redis
Kitą:ASP.NET Core (1) naudoja Redis talpyklą
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com