云存储系统的实时编辑器

时间:2016-05-16 07:45:40

标签: c# asp.net-mvc cloud

我正在研究ASP.Net MVC5中的云存储系统。我在其中创建了一个文件管理器来处理剪切,复制,下载多个文件,编辑和预览文件,但我想实时编辑文件(如文字文件)(协作编辑)..是否有任何API可以帮助我

提前谢谢。

2 个答案:

答案 0 :(得分:1)

你应该使用Signal R进行实时应用......可以在应用程序用户界面的帮助下,但最好根据你的选择编写你自己的代码......

[http://signalr.net/][1]

dev_express和syncfusion可能是你的解决方案..这些..

答案 1 :(得分:0)

这变成了一个巨大的评论,所以我只是在答案中解释我的观点。如果我看到实际答案出现,我会删除它。

我建议您开始编写自己的代码进行协作编辑,原因很简单。对于几乎每种文件类型,您至少需要稍微不同的处理,表明永远不会有一个API支持所有文件类型的协作编辑,除非有人将其作为维护和保持目标的目标每个人都创造了。

开始简单,文本(或十六进制)编辑。定义如何在其他客户端上进行更改和实现更改,然后按照您的需要添加任意数量的文件类型(以及随之而来的方法)。

您可以使用这些open source collaborative text editors中的1个源代码(您必须在其网站上找到下载/ Github链接)以获得如何操作的一般信息,但您仍需要输入一些工作,如果不创建自己的代码就不会走得太远。

协作编辑要求用户1(刚刚开始编辑)客户端发送以下任何一个:

  1. 指向文件中所做更改的数据
  2. 完整文件,用户2的客户端(或中央“服务器”)应该能够计算从那里做出的更改并实施它们。
  3. 其中一个问题是仅覆盖文件更改的那部分(并避免覆盖其他用户2的工作)。

    最大的问题(你不能拥有“1 for all”方法/ API的原因)每个文件类型都有自己的结构,这意味着不同的文件类型将有不同的数据表示文件中的更改。如果您尝试编写原始数据,它可能会起作用,但您仍需要计算并锁定文件的特定部分,其中包含一般信息,而不是文件的数据。