Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 27075|Antwoord: 0

[Bron] EF Core Series 2 bevat OnModelCreating, maakt indexen met behulp van reflecties, en meer

[Link kopiëren]
Geplaatst op 22-9-2020 10:57:19 | | | |
Indexeren is een veelvoorkomend concept in meerdere datastores. Hoewel hun implementatie in een datastore kan variëren, kunnen ze ook worden gebruikt voor kolomgebaseerde opzoekopdrachten (of een set kolommen) om efficiënter te zijn.

De hyperlink-login is zichtbaar.

Wat je moet weten:

.net/c# maakt gebruik van de reflectiedynamische uitvoeringsmethode
https://www.itsvse.com/thread-4771-1-1.html

C#-reflectie krijgt de weergavenaam van de objecteigenschap
https://www.itsvse.com/thread-3219-1-1.html

In Entity Framework 6 kun je indexen toevoegen door attributen toe te voegen aan velden, maar in ef core kun je attributen niet gebruiken om indexen toe te voegen aan tabelvelden, dus moet je de OnModelCreateing-methode herschrijven en de bijbehorende regels één voor één schrijven.

Verschillende tabellen moeten op deze manier worden geschreven, wat niet eenvoudig te onderhouden is en de leesbaarheid te slecht is, dus schrijven we de index van elke tabel op onze eigen manier om updates en zoekopdrachten te vergemakkelijken.

EF-kern wordt gebruiktCode FristSchema creëert een tabelstructuur.

Maak eerst een nieuwe IOnModelCreate-interface, de code is als volgt:

We definiëren een object onderaan de klasseklasse van verschillende tabellen en erven de interface, bijvoorbeeld:

AccountSetting-code:
EmailSentHistorySetting-code:

Herschrijf in je eigen DbContext-contextobject de OnModelCreateing-methode, gebruik de reflectiemethode en voer de OnModelCreateing-methode op je beurt uit om indexen, relaties, dataseeding, enzovoort te maken.

De OnModelCreateing-methode is als volgt:



Voer het Create Migration-commando uit om de volgende code te genereren:



Discovery, indexen kunnen succesvol worden gemaakt via reflectiemethoden, enzovoort.

(Einde)





Vorig:.NET Core implementeert het parsen van het distributed lock-principe op basis van Redis
Volgend:ASP.NET Core (1) gebruikt Redis-caching
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com