SideShow
Legacy Member
Hallo
Ik heb een project die na het compileren files moet kopiëren naar een dev server. Eerst had ik een post build event batch file maar ik vond dat onhandig. Ik heb dan een tooltje gemaakt die files kopieert als ze veranderen. .Net heeft daar een FileSystemWatcher voor met handige events.
Het probleem is dat er een rariteit in deze klasse zit (klik) waardoor het event 2 maal gebeurt. Ik heb de indruk dat visual studio tijdens het compileren ook soms rare dingen doet (zoals files veranderen en ze dan direct verwijderen, en ze dan direct terug aanmaken)... dus in combinatie is dat natuurlijk een ambetantigheid.
Ik zou graag de files sowieso maar 1 keer kopiëren. Ik denk bvb om een wrapper te maken rond FilesystemWatcher, die een lijst bijhoudt van files die gewijzigd zijn samen met een timestamp. Op die manier kan je dan zelf bepalen wanneer een event (OnFileChanged) van de wrapper class moet gebeuren.
Of het zelfde principe, maar dan toegepast in de class die zorgt voor het kopiëren ... (in mijn geval Deployer.cs)
Momenteel heb ik de volgende cruciale classes: DeploySource, DeployTarget, MainForm, Deployer
Het is zo dat ik dit geheel momenteel gewoon zijn werk laat doen maar in de front end (mainform) gewoon een filter maak op het displayen van een log. Dit moet natuurlijk veranderen...
Iemand eventueel nog meer ideeën?
Ik heb een project die na het compileren files moet kopiëren naar een dev server. Eerst had ik een post build event batch file maar ik vond dat onhandig. Ik heb dan een tooltje gemaakt die files kopieert als ze veranderen. .Net heeft daar een FileSystemWatcher voor met handige events.
Het probleem is dat er een rariteit in deze klasse zit (klik) waardoor het event 2 maal gebeurt. Ik heb de indruk dat visual studio tijdens het compileren ook soms rare dingen doet (zoals files veranderen en ze dan direct verwijderen, en ze dan direct terug aanmaken)... dus in combinatie is dat natuurlijk een ambetantigheid.
Ik zou graag de files sowieso maar 1 keer kopiëren. Ik denk bvb om een wrapper te maken rond FilesystemWatcher, die een lijst bijhoudt van files die gewijzigd zijn samen met een timestamp. Op die manier kan je dan zelf bepalen wanneer een event (OnFileChanged) van de wrapper class moet gebeuren.
Of het zelfde principe, maar dan toegepast in de class die zorgt voor het kopiëren ... (in mijn geval Deployer.cs)
Momenteel heb ik de volgende cruciale classes: DeploySource, DeployTarget, MainForm, Deployer
Het is zo dat ik dit geheel momenteel gewoon zijn werk laat doen maar in de front end (mainform) gewoon een filter maak op het displayen van een log. Dit moet natuurlijk veranderen...
Iemand eventueel nog meer ideeën?
