私の問題は、1..n 個のファイルを 1 つのファイルにマージすることです。SharePoint Server にターゲット SPFile があります。OpenXML に関する Web サイトに基づいてメソッドを作成しましたが、エラーなしで実行されますが、確認すると空白になります。
ここに方法があります
private void InsertSPFileInto(SPFile target, SPFile source, int index)
{
Stream targetStream = target.OpenBinaryStream();
using (WordprocessingDocument myDoc = WordprocessingDocument.Open(targetStream, true))
{
string altChunkId = "AltChunkId" + index.ToString();
MainDocumentPart mainPart = myDoc.MainDocumentPart;
AlternativeFormatImportPart chunk =
mainPart.AddAlternativeFormatImportPart(
AlternativeFormatImportPartType.WordprocessingML,
altChunkId);
Stream sourceStream = source.OpenBinaryStream();
chunk.FeedData(sourceStream);
AltChunk altChunk = new AltChunk();
altChunk.Id = altChunkId;
mainPart.Document
.Body
.InsertAfter(altChunk,mainPart.Document.Body.LastChild);
mainPart.Document.Save();
}
}
繰り返しますが、空白のドキュメントを返すだけですが、破損することもありません。
ありがとう。
ティム・ダニエルズ