C# Sharepoint项目文件替换
嗨,我一直在玩一个文件,它属于Sharepoint列表中的一个项目。此项目是一个文档,我对其进行了更改,然后将其转换为PDF。我目前上传了这个PDF,并用它替换了原始文档。那里的一切似乎都运转良好。但是,当我用新文件替换该文件时,我无法看到该文件作为文档文件时的旧版本。如果这是不可能的,我已经被赋予了灵活性,以复制项目之前,更换新的旧文件之一。这样就有了可用的原始文档文件和新版本 我目前一直在玩item.CopyTo(),试图复制该项目,但未成功。下面是我用来替换文件的代码(以及我用来复制项目的代码): 我得到的错误是:无法在指定的目标中创建元素。请确保目录存在并且您具有所需的权限。(我得到的实际错误是西班牙语,所以我翻译了它,可能不是英语显示的确切信息) 显示的实际信息(西班牙文):无任何要求。现有地毯的压缩和编辑许可 只要Im接收权限不是问题,而且目录显然存在,因为这是当前的项目目录。。。如果有任何其他方法可以做到这一点,请随时发布,因为这可能不是最好的解决方案。。。提前谢谢 编辑C# Sharepoint项目文件替换,c#,sharepoint,C#,Sharepoint,嗨,我一直在玩一个文件,它属于Sharepoint列表中的一个项目。此项目是一个文档,我对其进行了更改,然后将其转换为PDF。我目前上传了这个PDF,并用它替换了原始文档。那里的一切似乎都运转良好。但是,当我用新文件替换该文件时,我无法看到该文件作为文档文件时的旧版本。如果这是不可能的,我已经被赋予了灵活性,以复制项目之前,更换新的旧文件之一。这样就有了可用的原始文档文件和新版本 我目前一直在玩item.CopyTo(),试图复制该项目,但未成功。下面是我用来替换文件的代码(以及我用来复制项目的
文件的版本似乎是以文档的形式进行的,但是扩展名仍然是PDF。我知道如何使版本控制保持原始文件的扩展名吗?只要CopyTo方法通过路径。GetDirectoryName返回反斜杠,而且CopyTo函数似乎无法正确解释这一点,因此使用字符串。替换“\”到“/”修复了错误
扩展问题我找不到解决方案,如果有人知道解决方案,请贡献,谢谢!只要CopyTo方法通过路径。GetDirectoryName返回反斜杠,CopyTo函数似乎无法正确解释此问题,因此字符串。替换“\”到“/”可修复错误 扩展问题我找不到解决方案,如果有人知道解决方案,请提供,谢谢
string newFileName = Path.GetFileNameWithoutExtension(file.Name) + ".old.docx";
string url = item.Web.Url + "/" + Path.GetDirectoryName(item.Url) + "\\" + newFileName;
item.CopyTo(url); //This is where my code crashes...
using (BinaryReader binReader = new BinaryReader(File.Open(tempSavePath, FileMode.Open)))
{
byte[] fBin;
string fileName = Path.GetFileNameWithoutExtension(file.Name) + ".pdf";
file.CheckOut();
fBin = binReader.ReadBytes((int)binReader.BaseStream.Length);
item["Title"] = fileName;
file.SaveBinary(fBin);
file.MoveTo(Path.GetDirectoryName(item.Url) + "\\" + fileName, true);
file.Item["Nombre"] = fileName;
file.Update();
file.CheckIn("");
}