怎样在SharePoint中在线编辑文档

我一直以为只有在Document Library里面的File才会支持在线编辑。直到今天早上我才发现用IE打开List里面的Attachments也是支持在线编辑的,但前提是必须是IE浏览器。

目前正在开发的项目,我开始设计时是把所有的审批信息存放在List中,上传的文档以Attachments形式保存于List中,昨天客户来公司,我演示的时候,用Chrome打开附件,直接下载了(以后建议用IE),客户需要在线编辑功能,还狠狠的批了我们一顿,附件不能在线编辑,那我审核个毛线。(其实是可以的,用IE就行。)结束后,我也没多想(经验不足)直接对代码进行该了,将FileUpload上传的文件保存到一个Document Library 的Log中,其实这完全是多余的。

如果你想在SharePoint中,想对上传的文档进行在线的编辑,有2种方法,一种当然是上传到文档库啦,还有一种就是以Attachments上传到List。

List

首先,对ListItem进行Update操作。

if (fileAttachment.HasFile)
            {
                try
                {
                    foreach (var file in fileAttachment.PostedFiles)
                    {
                        newItem.Attachments.Add(file.FileName, file.InputStream.ReadFully());
                    }
                }
                catch ()
                {

                }
            }
            newItem.Update();

然后List的ListItem编辑Webpart中,用HyperLink画出附件,其实就是获取附件的Url地址

SPListItem newItem = this._applyItemList.GetItemById(this.ObjectId);
                HyperLink hyperLink=null;
                foreach (string currentAttachment in newItem.Attachments)
                {
                    hyperLink=new HyperLink();
                    hyperLink.ID = Guid.NewGuid().ToString();
                    string attachmentAbsoluteURL = newItem.Attachments.UrlPrefix + currentAttachment;
                    SPFile attachmentFile = this._currentWeb.GetFile(attachmentAbsoluteURL);
                    hyperLink.Text = attachmentFile.Name;
                    hyperLink.NavigateUrl = attachmentAbsoluteURL;
                    phAttachment.Controls.Add(hyperLink);
                    //添加换行
                    phAttachment.Controls.Add(new LiteralControl("<br  />"));
                }

最后在编辑的Webpart如下所示,直接用IE打开,支持在线编辑,但没有历史记录

当然,你也可以将文档上传到文档库,上传到文档库里面你的操作有历史记录

Document Library

比如我将FileUpload上传的文件保存到文档库中的相应文件夹,以ListID+“-”+ListItemID命名的文件夹,这样避免了上传文档重名的问题,首先判断是否存在这个文件夹,不存在则创建,当创建完成后,将文档存放在文档库中此文件夹下:

if (fileAttachment.HasFile)
            {
                try
                {
                    foreach (var file in fileAttachment.PostedFiles)
                    {
                        using (SPSite logSite = SPContext.Current.Site)
                        {
                            using (SPWeb logWeb = logSite.AllWebs["log"])
                            {
                                logWeb.AllowUnsafeUpdates = true;

                                SPDocumentLibrary library = logWeb.Lists["ApproveAttachmentLog"] as SPDocumentLibrary;
                                string rootUrl = library.RootFolder.Url;
                                string listId = _applyItemList.ID.ToString();
                                string listItemId = newItem.ID.ToString();
                                string folderUrl = rootUrl + "/" + listId+"-" + listItemId;
                                SPFolder folder = logWeb.GetFolder(folderUrl);

                                if (!folder.Exists)
                                {
                                    SPListItem newFolder = library.Folders.Add(library.RootFolder.ServerRelativeUrl, SPFileSystemObjectType.Folder, listId +"-"+ listItemId);
                                    newFolder.Update();
                                }
                                Stream stream = file.InputStream;
                                byte[] bytFile = new byte[Convert.ToInt32(file.ContentLength)];
                                stream.Read(bytFile, 0, Convert.ToInt32(file.ContentLength));
                                folder.Files.Add(System.IO.Path.GetFileName(file.FileName), bytFile, true);

                                logWeb.AllowUnsafeUpdates = false;

                            }
                        }

                    }
                }
                catch (Exception)
                {

                }
            }

查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/web/sharepoint/

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索文档
, string
, file
, 附件在线预览
, 文件夹
, 附件上传
, 在线编辑器
, hyperlink
, 在线
获取在线文档
sharepoint 在线编辑、在线文档编辑、在线word文档编辑、office文档在线编辑、java在线编辑word文档,以便于您获取更多的相关知识。

时间: 2024-09-17 18:47:08

怎样在SharePoint中在线编辑文档的相关文章

插件-协同在线编辑文档的软件

问题描述 协同在线编辑文档的软件 Etherpad 软件如何搭建,现在已经安装官网的步骤搭建,但是遇到的问题是如何使用插件Abiword导入更多格式的文件,以及如何在配置文件中修改编码格式.

link环境下制作一个网盘软件,使用的是codefirst技术,请问如何在线编辑文档?

问题描述 link环境下制作一个网盘软件,使用的是codefirst技术,请问如何在线编辑文档? link环境下制作一个网盘软件,使用的是codefirst技术,请问如何在线编辑文档? 解决方案 如果是office文档,可以用office web server,如果是html,用html编辑器.http://code.csdn.net/news/275067 这里有22个,总有一个适合你 解决方案二: ckeditor http://ckeditor.com/ 另外能说一句,不要每次都来个"li

如何在 Linux 上 使用 ONLYOFFICE 协同编辑文档

"多年前由一些紧张兮兮的.带有强迫症的助理开发的 Bulletin,只是一个放在共享文件夹中只有 Emily 和我可以访问的 Word 文档而已.同一时间我们只有一个人可以打开它并添加消息.想法,或者给条目列表上增加问题.然后我们再打印出更新后的版本并放到我桌子架上的剪贴板,并在完成时删除旧的内容."(--<穿普拉达的女王>,劳伦·魏丝伯格著 ) 直到今天人们仍然在使用这样的"协同编辑",只有一个人可以打开共享文件,对其进行更改,然后告诉其它人什么时候修

Word中如何给文档设置密码

  在Word2003中,编辑文档时,有时会遇到一些重要的机密文件,为了防止外漏,需要给它设置密码.客户数其实很多的朋友是不知道要怎么来给Word文档设置密码的,今天,小编就要来教教大家了. Word2003 1.常用的设置密码方法,给文档加密后任何人必须输入正确的密码后才可以进入文件. 在Word2003中单击菜单栏的"工具"-->选项-->安全性,然后在"此文档的文件加密选项"下输入密码,确定后再输入一次密码. 设置密码 2.是"只读&qu

weboffice 在线预览后,编辑文档回传服务器,我怎么拿到编辑后的临时文件

问题描述 weboffice 在线预览后,编辑文档回传服务器,我怎么拿到编辑后的临时文件 在线预览功能 我已实现,再次编辑这个文档回传服务器 需求是我拿到编辑后的临时文件 解决方案 document.all.WebOffice1.HttpAddPostCurrFile("DocContent",""); 点聚操作office的api是这样的,然而这个DocContent具体是啥? 麻烦懂的人 指点下!

如何在Word 2013中缩放打印文档

在使用Word2013编辑文档的过程中,用户经常需要将当前Word文档以比实际设置的纸张更小的纸型进行打印.例如,将当前A4纸张的文档打印在B5纸张上面.在Word2013中按纸张大小缩放打印文档的步骤如下所述: 第1步,打开Word2013文档窗口,依次单击"文件"→"打印"命令,如图2013080803所示. 图2013080803 单击"打印"命令 第2步,在打开的"打印"窗口中,单击"设置"区域的缩

在WPS文字中如何清除文档中多余的空行

在编辑文档的过程中免不了会有多余的空行产生.那有没有什么比较好的方法可以在一篇较长的文档中清除所有的或部分的空行呢?答案当然是有,且不只一种在编辑文档的过程中免不了会有多余的空行产生.那有没有什么比较好的方法可以在一篇较长的文档中清除所有的或部分的空行呢?答案当然是有,且不只一种. 方法一.利用"文字工具"中的"删除空段" 一般空行都会是独立的一段,没任何字符.所以,想清除文档中的所有空行,可以利用WPS文字提供的"文字工具"中的"删除

在Word 2010文档窗口中打开WPS文档

Word 2010支持WPS文件的打开和编辑,用户可以在Word 2010文档窗口中打开并编辑WPS文件.即使是金山软件最新版本的WPS2009文档,Word 2010也能提供完美支持.在Word 2010中打开WPS文件的步骤如下所述: 第1步,打开Word 2010文档窗口,依次单击"文件"→"打开"按钮,如图2009121201所示.   图2009121201 单击"打开"按钮 第2步,在打开的"打开"对话框中,单击文

在Word 2010中创建新建文档超链接

在Word 2010文档中创建链接到其他Word文档的超链接时,既可以在已有Word文档之间创建超链接,也可以在原有Word文档中 创建超链接的同时新建Word文档.在Word 2010文档中创建新建文档超链接的步骤如下所述: 第1步,打开Word 2010文档窗口,选中需要创建超链接的文字(参考教程<在Word 2010文档中创建文本超链接>).切换到 "插入"功能区,在"链接"分组中单击"超链接"按钮,如图2011081201所示