使用 cloudFilesProvider.CreateObjectFromFile 创建对象时无法添加元数据。cloudFilesProvider.CreateObjectFromFile 支持吗?目前我正在做:
DicMetaData.Add("StoreID", inStrContainerID);
DicMetaData.Add("FileType", instrFileType);
DicMetaData.Add("DateCreated", dTDateCreated.ToString("MM/dd/yyyy hh:mm:ss.FFF"));
DicMetaData.Add("isProcessed", "0");
DicMetaData.Add("DateProcessed", DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss.FFF"));
cloudFilesProvider.CreateObjectFromFile(inStrContainerID, inStrSrcFilePath, strDesFileName, 4096, DicMetaData);
因此,在调用 cloudFilesProvider.CreateObjectFromFile 时,我全力以赴
RestService.Stream(absoluteUri, method, stream, chunkSize, maxReadLength, headers, queryStringParameter, requestSettings, progressUpdated);
在 ProviderBase.cs 的 StreamRESTRequest 方法中,这里的标头计数为 6 [我添加的 5 个项目 + 在 RestService.Stream 之前添加的 X-Auth-Token]
所以我知道所有项目都被传递给 resquest,但是在创建对象之后,如果我执行 get cloudFilesProvider.GetObjectMetaData 然后我得到一个计数为 0 的字典。
然后我做了
cloudFilesProvider.CreateObjectFromFile(inStrContainerID, inStrSrcFilePath, strDesFileName);
cloudFilesProvider.UpdateObjectMetadata(inStrContainerID, strDesFileName, DicMetaData);
在这里,如果我执行 get cloudFilesProvider.GetObjectMetaData,我会在 Dictionary 中获得添加的元数据。
那么如何才能做得更好呢?