Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[VS2005]Automatisch policy genereren met assembly redirect

Pagina: 1
Acties:

  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Probleem
Ik wil een automatische assembly redirect maken voor een dll met business logica. Normaalgesproken doe je dit met een policy file en dit is op zich geen probleem.
Ik heb het ook voor elkaar om automatisch na het builden een policy file in elkaar te draaien. Dit doe je met een commandline script die je aan je post-build event hangt.
Het enige probleem is dat je de policy afhankelijk maakt van een config file waarin het nieuwe versie nummer staat. En dat kan ik van te voren niet bepalen, dus dat moet op de een of andere manier achteraf.

Mijn vraag is dus: is het op eenvoudige wijze mogelijk om via Visual Studio 2005 een policy config file te genereren waarin het nieuwe versienummer staat? Bij voorkeur met standaard tools, zodat ik niet zelf aan het programmeren hoef (voor dit onderdeel, programmeren zelf vind ik leuk :+)

  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Ik heb voor nu maar even een command-line tool gemaakt die op basis van de major en minor versie van een assembly en de app.config automatisch een policy config genereert. In de app.config heb ik een redirection opgenomen met twee template variabelen voor de old en new version. Deze worden vervangen door respectievelijk "major.minor.0.0-major.minor.65535.65535" en "huidige assembly versie".
Resultaat is een policy file die in de assembly cache neergezet kan worden.

Het bot redirecten van alle assembly aanvragen voor een bepaalde major.minor versie is aan de ene kant niet heel netjes, maar het zorgt er wel voor dat als ik een nieuwe versie van de business logica release naar de klant, ik niet alle afhankelijke software hoef te hercompileren en uitleveren.

Backwards compatibility wordt op diverse plekken gecontroleerd, omdat wij (in deze specifieke situatie) een testomgeving hebben die gelijk is aan de productieomgeving van de klant (op de data na dan natuurlijk).

Tjonge, lekker tegen mezelf aan het lullen :D. Goed, na deze self-centered discussie zal ik maar eens gaan pitten :)

ps: Ik sta natuurlijk nog geheel open voor suggesties voor hoe het beter kan.
pps: als mensen geinteresseerd zijn in het "tooltje" stuur dan ff een mail