2010-04-18 13 views
10

Abbiamo un sistema CMS scritto in .NET C#. Questo sistema ha funzioni di modifica per i modelli (essenzialmente file HTML) e vari altri file di supporto come i file CSS e javascript.Implementare un server WebDAV in C#?

Questi "file" non sono realmente file, ma record di database e vengono modificati utilizzando semplici vecchi textareas all'interno del sistema CMS.

Per semplificare la modifica di questi "file", l'idea era di implementare il supporto WebDAV nel sistema CMS per questi file, in modo che gli utenti potessero utilizzare alcuni software client WebDAV per connettersi al CMS e quindi aprirli in VS 2008 ad esempio .

In primo luogo, è un'idea fattibile?

In secondo luogo, se sì ... da dove iniziare? Qualsiasi buon articolo là fuori sull'implementazione di un server WebDAV in C# per fornire l'accesso a documenti fisici o documenti "pseudo" che sono in realtà solo record in un database?

Qualsiasi ingresso apprezzata ....

+0

sono stati in grado di implementare questa? Anch'io ho un tale requisito e ho bisogno di aiuto. Non sto trovando molte linee guida riguardo l'argomento. – tamizhan

+0

Sì, abbiamo finito per scrivere questo da zero. È fondamentalmente un HttpModule che risponde ai verbi HTTP richiesti dallo standard WebDav. – HaukurHaf

+0

Grazie per la risposta. Buono a sapersi. Sto solo iniziando da questo. Come POC sto provando a scrivere un gestore semplice e ad incappare in problemi. Apprezzerei qualsiasi aiuto qui. Dettagli - http://stackoverflow.com/questions/27625680/httphandler-for-webdav-requests – tamizhan

risposta

15

Un itinerario per andare è quello di sviluppare un gestore HTTP personalizzato mediante l'implementazione dell'interfaccia IHttpHandler oppure si potrebbe forse andare con ASHX. Dai un'occhiata al walk through in questa pagina. http://msdn.microsoft.com/en-us/library/system.web.ihttphandler.aspx

vostro gestore di WebDAV dovrà elaborare le richieste e inviare i gestori metodo appropriato per gestire i vari metodi HTTP (GET, POST, PUT, DELETE, spostare, copiare, ecc). I metodi supportati dipenderanno dal livello di conformità richiesto con le varie classi di server WebDAV. C'è fortunatamente un sacco di codice Java per WebDAV che potresti trovare e usare come riferimento per la tua implementazione.

Se la licenza GPL non è una restrizione per voi, che potrebbe essere la pena di guardare Sphorium di WebDAV.NET http://sourceforge.net/projects/webdav/

E ci sono opzioni commerciali. http://www.webdavsystem.com/server

E, naturalmente, il collegamento più importante, il WebDAV RFC http://www.ietf.org/rfc/rfc2518.txt

+0

Grazie, ho intenzione di controllare quei link :-) – HaukurHaf