在C#中实现WebDAV服务器?

Hau*_*Haf 10 .net c# webdav content-management-system

我们有一个用.NET C#编写的CMS系统.该系统具有模板(基本上是HTML文件)和各种其他支持文件(如CSS和javascript文件)的编辑工具.

这些"文件"不是真正的文件,而是数据库记录,它们使用CMS系统中的普通旧textareas进行编辑.

为了使编辑这些"文件"更容易,一个想法是在CMS系统中为这些文件实现WebDAV支持,因此用户可以使用一些WebDAV客户端软件连接到CMS,然后在VS 2008中打开它们.

首先,这是一个可行的想法吗?

其次,如果是这样......从哪里开始?有关在C#中实现WebDAV服务器以提供对物理文档或"伪"文档的访问的任何好文章,这些文档实际上只是数据库中的记录吗?

任何输入赞赏....

Chr*_*lor 15

一条路线是通过实现IHttpHandler接口开发自定义HTTP处理程序,或者您可以使用ASHX.看看这个页面上的漫步. http://msdn.microsoft.com/en-us/library/system.web.ihttphandler.aspx

您的WebDAV处理程序将需要处理请求并分派适当的方法处理程序来处理各种HTTP方法(GET,POST,PUT,DELETE,MOVE,COPY等).您支持哪些方法取决于您对各种WebDAV服务器类的所需合规级别.幸运的是,您可以找到大量用于WebDAV的Java代码,并将其用作实现的参考.

如果GPL许可证不是对你的限制,那么可能值得关注Sphorium的WebDAV.NET http://sourceforge.net/projects/webdav/

还有商业选择. http://www.webdavsystem.com/server

当然最重要的链接是WebDAV RFC http://www.ietf.org/rfc/rfc2518.txt