2012-03-27 7 views
0

Ich habe eine MVC3-Anwendung mit einigen XML-Dateien im Ordner App_Data. Um zu verhindern, dass diese Dateien mit den neuen Builds überschrieben werden, schlägt das für die Veröffentlichung im Web verantwortliche Team vor, Code in der Datei Global.asax hinzuzufügen, um zu überprüfen, ob die Dateien auf App_Data bereits beim Start der Anwendung vorhanden sind, und dann zu aktualisieren die Dateien aus anderen Ordnern (XML_Templates) nur, wenn sie NICHT im Ordner App_Data vorhanden sind. Irgendwelche Vorschläge, wie kann ich diese Logik in der Global.asax-Datei codieren? Vielen Dank im Voraus.global.asax, um nach Dateien in einem Ordner zu suchen und zu kopieren, wenn der Ordner leer ist

+2

Sie sollten einige Zeit in die Interaktion mit Ihren anderen Fragen investieren, um zu helfen, sie zu lösen und sie als Antworten zu markieren. –

Antwort

1
protected void Application_Start() 
{ 
    ... 

    var appData = Path.Combine(HostingEnvironment.ApplicationPhysicalPath, "app_data"); 
    var xmlTemplates = Path.Combine(HostingEnvironment.ApplicationPhysicalPath, "XML_Templates"); 

    foreach (var file in Directory.EnumerateFiles(xmlTemplates)) 
    { 
     var dest = Path.Combine(appData, Path.GetFileName(file)); 
     if (!File.Exists(dest)) 
     { 
      File.Copy(file, dest); 
     } 
    } 
} 
+0

Genau das brauche ich! Vielen Dank, Darin. – Gradile

Verwandte Themen