Avatar billede donpedrodelavega Nybegynder
08. juni 2003 - 21:22 Der er 12 kommentarer og
1 løsning

Globale properties / variabler i et Class Lib.

Hvad er best practice med hensyn til at lave globale variabler / properties i et C# dll ?

Jeg er interesseret i at have variabler som feks. connectionstring, logfilepath, usw. liggende i en fælles placering.
Indtil nu har jeg har haft det liggende i en ekstern XML fil, men det er et problem ved migration fra maskine til maskine og derudover er det noget vanskeligt mht. sikkerhed...

/ DP
Avatar billede donpedrodelavega Nybegynder
08. juni 2003 - 21:23 #1
Jeg bruger web.config i web-apps og det er noget i den stil jeg forestiller mig der findes for et dll ?
Avatar billede burningice Nybegynder
08. juni 2003 - 21:29 #2
hvorfor kan du ikke bruge samme slags config-fil til din dll-fil? Du kan f.eks. finde stien til dll-filen ved hjælp af reflection
Avatar billede odegaard Nybegynder
08. juni 2003 - 21:32 #3
du kan sagtens hente værdier i web.config fra din dll.
Avatar billede donpedrodelavega Nybegynder
08. juni 2003 - 21:40 #4
det er jo ikke sikkert at jeg kommer til at bruge den samme kombination af dll's til samtlige projekter. Med sikkerhed kan ihvertilfald siges at jeg ikke skal bruge den samme webapp. hver gang jeg bruger den her specifikke dll.

fessor >>
jeg forstår ikke helt hvad du mener ?

/ DP
Avatar billede burningice Nybegynder
08. juni 2003 - 21:42 #5
du siger at du har haft problemer med migrering fra en maskine til en anden... hvilket problemer er det ?
Avatar billede jakobandersen Nybegynder
08. juni 2003 - 22:27 #6
At bruge en konfiguration til en specifik dll/exe vil jeg som regel lave ved at lave en specifik configurationsfil til denne dll/exe som det er vist i quickstart:

http://samples.gotdotnet.com/quickstart/howto/doc/configclient.aspx

Men da ting som applikationslog, connectionsstring osv. oftest er applikationsspecifikke og ikke dll specifikke vil jeg i webverdenen bruge web.config til dette, og i applikationer vil jeg oftest bruge global configurationsklasse. Dog afhænger dette i høj grad af dit design pattern.
Avatar billede donpedrodelavega Nybegynder
08. juni 2003 - 23:48 #7
fessor >>
eftersom at stien til den eksterne xml-fil nødvendigvis må hardcodes samt at denne sjældent ville kunne forlanges at være identisk skal den hardcodede sti ændres fra migration til migration.

moonduck >>
en global configurationsklasse ?
det lyder som superklasser som de respektive klasser så arver fra ? Det er selvf. en løsning på nogle af problemerne, men det betyder stadig at skidtet skal hardcodes og ikke kan hentes ind enten runtime eller loadtime. Det er vigtigt at værdierne bliver hentet ind ved eks. runtime / loadtime og ikke compile-time.
Avatar billede burningice Nybegynder
09. juni 2003 - 00:28 #8
donpedrodelavega>> det er jo netop det jeg skriver, at det skal den IKKE... du skal IKKE hardcode pathen, men kan @ runtime forespørge på pathen til din assembly, og på den måde "beregne" hvor din xml-fil ligger
Avatar billede donpedrodelavega Nybegynder
02. juli 2003 - 00:07 #9
fessor >>
jeg forstaar nu hvad du mener, jeg vil dog altid forsoege at finde et alternativ til reflections.

/ DP
Avatar billede burningice Nybegynder
10. juli 2003 - 18:14 #10
donpedrodelavega>> ææh... okay *ser spørgende ud*
Avatar billede donpedrodelavega Nybegynder
05. oktober 2003 - 12:37 #11
cyberfessor >>
nu forstaar jeg i realiteten hvad du mener.. jeg er begyndt at bruge .resx filer til at indeholde alt det skidt og det virker daelme godt... tak for at have peget i den rigtige retning...

/ DonPedro

note... cf: smider du ikke lige et svar saa du kan faa de pts. der
Avatar billede burningice Nybegynder
19. oktober 2003 - 19:33 #12
:) svar... har lige været en tur i USA og på Grønland, så har været lidt inaktiv her på exp det sidste stykke tid.
Avatar billede donpedrodelavega Nybegynder
19. oktober 2003 - 19:39 #13
tak for hjaelpen...

Groenland og U.B ?
...det lyder som en begivenhedsrig tur... velkommen tilbage... :)

/ DP
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester