Toon posts:

[.Net] References, Assembly.Load en reflection

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben bezig met een applicatie bestaande uit een datalaag, businesslaag en een WinUI.

Vanuit de WinUI heb ik een reference naar de businesslaag op de ontwikkel-server. En vanuit de Businesslaag heb ik een reference naar de datalaag op de ontwikkel-server. In design-time kan ik dan alle methods, events en properties benaderen en gebruiken. En in design-time werkt dat ook allemaal.

Waar het echter moeilijk wordt is het moment dat het project wordt uitgerold. Op dat moment verandert de locatie van de businesslaag naar de productie-server. De Reference die er dus lag, is dan niet meer bruikbaar/ vindbaar.

Nu heb ik een oplossing voor dit probleem, en dat is Reflection. Daar ben ik eventjes in gedoken en ik heb het gevoel dat dit me heel veel werk oplevert. Dus, voordat ik daar mee verder ga wil ik graag weten of ik op goede spoor zit, of dat er een veel makkelijkere oplossing is.


Dus.... is Reflection de juiste manier om met references naar dll's om te gaan?


Alvast bedankt.

  • EfBe
  • Registratie: Januari 2000
  • Niet online
Verwijderd schreef op 03 maart 2003 @ 13:39:
Waar het echter moeilijk wordt is het moment dat het project wordt uitgerold. Op dat moment verandert de locatie van de businesslaag naar de productie-server. De Reference die er dus lag, is dan niet meer bruikbaar/ vindbaar.
Dat is op te lossen door remoting: je spreekt een object aan op een andere server.
Nu heb ik een oplossing voor dit probleem, en dat is Reflection. Daar ben ik eventjes in gedoken en ik heb het gevoel dat dit me heel veel werk oplevert. Dus, voordat ik daar mee verder ga wil ik graag weten of ik op goede spoor zit, of dat er een veel makkelijkere oplossing is.
Nee reflection heeft er niets mee te maken. Wat je moet doen is voor je DAL een interface assembly maken en die implementeren in je DAL tier. Die interface gebruik je als references in je BL tier en je kunt nu gemakkelijk via remoting dmv die interfaces verbinding maken met die DAL op een andere server. Zie .NET documentatie omtrent remoting.

Echter, als ik je een raad mag geven: verplaats je complete tier stack naar de productieserver en maak verbinding via het netwerk met de database server. Veelal is dit sneller dan dmv remoting objects te marshallen vanuit de DAL op bak A naar de BL op bak B.

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com


Verwijderd

Topicstarter
EfBe schreef op 03 March 2003 @ 14:25:
[...]
Dat is op te lossen door remoting: je spreekt een object aan op een andere server.
Thanks. Heb 't gezien ja.... reflection is een heel ander verhaal.
Wat je moet doen is voor je DAL een interface assembly maken en die implementeren in je DAL tier. Die interface gebruik je als references in je BL tier en je kunt nu gemakkelijk via remoting dmv die interfaces verbinding maken met die DAL op een andere server. Zie .NET documentatie omtrent remoting.
Zo, dat wordt nog een flinke klus. Gelukkig zitten we hier in een test-project. Dus tijd genoeg om te stoeien met vanalles en nogwat. En ik kan het zo ingewikkeld maken als ik wil.
Echter, als ik je een raad mag geven: verplaats je complete tier stack naar de productieserver en maak verbinding via het netwerk met de database server. Veelal is dit sneller dan dmv remoting objects te marshallen vanuit de DAL op bak A naar de BL op bak B.
Het is in ieder geval een stuk makkelijker om alles bij elkaar op dezelfde server te zetten.
De afzonderlijke layers (DAL en BL) komen dan in de Bin-directory van de WebUI of WinUI terecht. Scheelt inderdaad een hoop werk met remoting.


Thanks voor je input!

  • EfBe
  • Registratie: Januari 2000
  • Niet online
Je kunt altijd een testprojectje doen met zowel remoting als alles op 1 bak en via het netwerk connecten met de database. Ik weet niet welke database je gaat gebruiken, dus dat kan schelen (access via het netwerk benaderen is bv erg langzaam). Je kunt met dat testprojectje dan testen wat de performance is bij de verschillende setups en aan de hand daarvan je uiteindelijke setup bouwen.

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com