Gå til innhold

.Net API. Kommunisere med "globalt objekt"


Anbefalte innlegg

Hei

Jeg er ny i programmering av .Net og C#, og prøver å lære meg objektorientert programmering. Jeg holder derfor på å lage et asp.net core API, basert på malen i visual studio.

De eksemplene jeg har kommet over, benytter entity framework til å kommunisere med en SQL database, mens mitt api skal brukes til å lese data fra et eksisterende API som er basert på DLL-filer.

Jeg har fått opprettet Controller med Repository pattern og dette fungerer greit. 

 

Utfordringen jeg har er hvordan jeg skal implementere klassen som jeg har laget for å kommunisere med DLL-ene.
Klassen fungerer for seg selv, og jeg får lest data fra DLL-api'et. Jeg sliter med hvordan jeg skal få sydd dette inn i .net api'et mitt.

Klassen(objektet) kjører en "connect()" funksjon når det opprettes, som kobler til DLL-api'et. 
i tillegg har klassen blandt annet en funksjon som heter "GetVariables" som returnerer en liste med variabler. 

 

Slik jeg tror det skal fungere, er at objektet opprettes når api-et starter. Deretter benytter alle controllerene det samme objektet for å lese data fra DL-api'et. På denne måten er det kun ett enkelt objekt som oppretter connection til DLL'apiet.

 

Ting jeg har prøvd er å kjøre klassen som en service ved å legge inn "builder.Services.AddHostedService<ApiServiceWorker>();".
på denne måten klarer jeg å kjøre klassen som en service, men jeg vet ikke hvordan jeg skal lese og skrive til objektet som er opprettet.

 

Noen som har tips så jeg kommer meg videre?

 

 

 

Edit: Jeg ser at det er noe som heter AddSingelton, og dette ser ut som det er det jeg leter etter. hvis noen vet om andre måter som fungerer bedre, tar jeg gjerne imot tips.

 

 

 

Endret av Automatikeren
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...