2013-09-03 15 views
5

Ho un servizio Web wcf distribuito in IIS 7. Quando si verifica un errore, devo registrare il messaggio che ha causato l'errore. Il registro deve essere creato su una condivisione di rete in cui gli sviluppatori hanno accesso alla condivisione (poiché non abbiamo accesso al server in cui è distribuito il servizio). Una directory virtuale è stata creata in IIS il cui percorso fisico si trova nella condivisione di rete.Come recuperare il percorso fisico per la directory virtuale

Come posso ottenere il percorso fisico della directory virtuale? Ho provato a utilizzare

System.Web.Hosting.HostingEnvironment.MapPath(virtualDirectoryPath) 

ma questo restituisce solo il percorso fisico sul server in cui si trova il servizio.

Per esempio, se la directory virtuale è "WSLogs" e mi danno la virtualDirectoryPath come "~/WSLogs" Mi metterò di nuovo C: \ inetpub \ wwwroot \ myServiceDirectory \ WSLogs \

+0

solo per assicurarsi Capisco, stai cercando di ottenere il percorso di rete della directory virtuale e NON il percorso fisico sul server? –

+0

In IIS la directory virtuale ha percorso fisico impostato sul percorso fisico sulla rete (la cartella condivisa). Voglio ottenere quel percorso della cartella condivisa. – knightscharge

risposta

9

è stata creata la directory virtuale allo stesso livello (sotto il nodo Sito Web predefinito) come servizio Web. Dopo aver spostato la directory virtuale deve essere situato sotto il nodo del servizio web stesso, sono stato in grado di ottenere il percorso fisico per la directory virtuale utilizzando:

System.Web.Hosting.HostingEnvironment.MapPath(virtualDirectoryPath) 

dove il virtualDirectoryPath è ~/WSLogs

+0

Fantastico! Salva la mia giornata..grazie –

Problemi correlati