質問

バージョン化が有効になっているドキュメントライブラリがあります。ドキュメントは現在、他のシステムにあり、それらを移行する必要があります。問題は、異なるVerions Migthが異なるファイルタイプ(doc、docx、pdf)を持っていることですが、それでも同じドキュメントです。ドキュメント拡張機能を変更して新しいコンテンツを設定することはできないと思いますか、それとも間違っていますか?ドキュメントタイプ/拡張機能が異なるバージョンを経験している人はいますか?

アドバイスをありがとう

編集:

サンプルコード:

var fic = new FileCreationInformation();
fic.Overwrite = true;
fic.Url = "1.png";
fic.Content = ReadByteArrayFromFile(@"e:\temp\1.png");
var f = dsvRoot.Files.Add(fic);

ctx.Load(f);
ctx.ExecuteQuery();

var items = dsv.GetItems(new CamlQuery());
ctx.Load(items, i => i.Include(ii => ii.Id));
ctx.ExecuteQuery();

items[0].File.SaveBinary(new FileSaveBinaryInformation() { Content = ReadByteArrayFromFile(@"e:\temp\1.jpg") });
ctx.ExecuteQuery();

items[0].File.MoveTo("/test/DSV/1.jpg", MoveOperations.Overwrite);
ctx.ExecuteQuery();

items[0].File.SaveBinary(new FileSaveBinaryInformation() { Content = ReadByteArrayFromFile(@"e:\temp\1.pdf") });
ctx.ExecuteQuery();

items[0].File.MoveTo("/test/DSV/1.pdf", MoveOperations.Overwrite);
ctx.ExecuteQuery();

items = dsv.GetItems(new CamlQuery());
ctx.Load(items, i => i.Include(ii => ii.Id, ii => ii.File, ii => ii.File.Versions));
ctx.ExecuteQuery();

新しいバージョンが作成されますが、問題は古いバージョンファイルを新しいバージョンに変更することです。したがって、V1の含有量はPNGですが、名前は1.PDFであり、PDFとして開くことを試みます。これを解決する方法はありますか?

役に立ちましたか?

解決

ええ、あなたは本当にそれをすることはできません、私が知っている限り(そして、はい、これは他のEDRMSでは問題ありません)私が示唆するのは、2つのライブラリ(.docと.pdf)を持っているようなものであり、参照するルックアップ列を作成しますそれらの間の。

これは、2つのバージョンの履歴を持つことを意味することを認識しています - それは素晴らしいことではありませんが、SharePointはファイルタイプの変更をうまく処理していないようです。

ライセンス: CC-BY-SA帰属
所属していません sharepoint.stackexchange
scroll top