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

Bekijken: 21011|Antwoord: 0

[Consoleprogramma] C# Unity Series (1) consoleprogramma's implementeren interface-afhankelijkheidsinjectie

[Link kopiëren]
Geplaatst op 2020-7-16 17:04:11 | | | |
Unity Containers (Unity) zijn volwaardige en uitbreidbare afhankelijkheidsinjectiecontainers. Het helpt bij het bouwen van losjes gekoppelde applicaties en biedt ontwikkelaars de volgende voordelen:

Vereenvoudigde objectcreatie, vooral voor hiërarchische objectstructuren en afhankelijkheden
vereistenabstractie; Dit stelt ontwikkelaars in staat om afhankelijkheden in de runtime of configuratie te specificeren en vereenvoudigt het beheer van cross-cutting issues
Verhoog flexibiliteit door componentconfiguratie over te laten naar containers
capaciteiten voor dienstpositionering; Dit stelt clients in staat containers op te slaan of te cachen
Onderschepping van instanties en types
Stem in met registratie

Begin met het maken van een nieuwe csharp-unity-demo consoleapplicatie.

Nuget installeert 2 pakketten met het volgende commando:

Maak een nieuwe IUser-interface en een nieuwe User-klasse aan, de code is als volgt:



Configureer het App.config-bestand

Kon het bestand of de assembly 'Microsoft.Practices.Unity.Configuration' niet laden of assembleren
https://www.itsvse.com/thread-9220-1-1.html

Definieer een Unity-node met containers erin, en er kunnen meerdere containers in de collectie zijn, als volgt:

De afgekorte configuratie is als volgt:



In de Program-bestandsinvoermethode roept u de GetUserName-methode van onze nieuw aangemaakte IUser-interface via Unity aan, de code is als volgt:

De resultaten van de implementatie zijn als volgt:



Zoals je kunt zien, instantiëren we elke keer dat we Unity gebruiken een nieuw User-object.

Broncode downloaden:De hyperlink-login is zichtbaar.





Vorig:(Fout) cvc-datatype-valid.1.2.1: 'xx' is geen geldige waarde voor 'gYearMonth'.
Volgend:Linux zoekt naar bestanden die een bepaald teken onder de map bevatten
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