gpt4 book ai didi

c# - 使用 FrontPage RPC 上传到 Sharepoint

转载 作者:行者123 更新时间:2023-11-30 12:18:18 24 4
gpt4 key购买 nike

我正在尝试使用 RPC 方法将文档及其元数据上传到共享点。
好吧,它工作正常,除了某些类型的文件,如 docx、xlsx..
我没有收到任何错误或异常,它们(docx、xlsx。)已正确上传到共享点,但没有关联的元数据。

我该如何解决这个问题?

下面是我用来上传元数据的代码:

 private static bool Upload(string webUrl, string documentName, byte[] bytes, Dictionary<string, object> metaInfo, NetworkCredential netAccess, out string result)
{
string putOption = "overwrite,createdir,migrationsemantics"; // see http://msdn2.microsoft.com/en-us/library/ms455325.aspx
string comment = null;
bool keepCheckedOut = false;
string method = "method=put+document%3a12.0.4518.1016&service_name=%2f&document=[document_name={0};meta_info=[{1}]]&put_option={2}&comment={3}&keep_checked_out={4}\n";
method = String.Format(method, documentName, EncodeMetaInfo(metaInfo), putOption, HttpUtility.UrlEncode(comment), keepCheckedOut.ToString().ToLower());
List<byte> data = new List<byte>();
data.AddRange(Encoding.UTF8.GetBytes(method));
data.AddRange(bytes);

try
{
using (WebClient webClient = new WebClient())
{
webClient.Credentials = netAccess;
webClient.Headers.Add("Content-Type", "application/x-vermeer-urlencoded");
webClient.Headers.Add("X-Vermeer-Content-Type", "application/x-vermeer-urlencoded");
result = Encoding.UTF8.GetString(webClient.UploadData(webUrl + "/_vti_bin/_vti_aut/author.dll", "POST", data.ToArray()));
if (result.IndexOf("\n<p>message=successfully") < 0)
throw new Exception(result);
}
}
catch (Exception ex)
{
result = ex.Message;
return false;
}
return true;
}

最佳答案

这是旧的,但由于 SharePoint 中的属性提升,未为办公文件设置元数据。如果您拥有自己的网络服务,则可以在添加文档时禁用它。要使用 FrontPage rpc,只需在第一次“PUT”-mthode 调用后再次设置元数据,您将获得另一个版本,但第二次应用元数据。

关于c# - 使用 FrontPage RPC 上传到 Sharepoint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2377620/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com