我们有一个使用.NET C#编写的CMS系统.该系统具有用于模板(基本上为
HTML文件)和各种其他支持文件(如CSS和
JavaScript文件)的编辑工具.
这些“文件”不是真正的文件,而是数据库记录,它们使用CMS系统中的普通旧文本编辑.
为了更容易地编辑这些“文件”,一个想法是在CMS系统中为这些文件实现WebDAV支持,因此用户可以使用一些WebDAV客户端软件连接到CMS,然后在VS 2008中打开这些文件.
首先,这是一个可行的想法吗?
其次,如果是,从哪里开始?有关在C#中实现WebDAV服务器的任何好的文章,可以访问实际上仅在数据库中记录的物理文档或“伪”文档?
任何输入赞赏….
解决方法
一个途径是通过实现IHttpHandler接口来开发一个自定义的HTTP处理程序,或者你可以使用ASHX.看看这个页面上的漫步.
http://msdn.microsoft.com/en-us/library/system.web.ihttphandler.aspx
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