GroupDocs.Assembly Cloud は、開発者がプログラムでリッチフォーマットのドキュメントを生成できる、フルマネージドの REST ベースのサービスです。
このサービスは、特別なプレースホルダータグを含む テンプレートファイル (Word、Excel、PowerPoint、HTML、PDF、またはサポートされている OpenOffice 形式のいずれか)で動作します。実行時に、XML または JSON ソースからのデータは、LINQ スタイルの式構文 を使用してこれらのプレースホルダーにバインドされるため、単純な値、表、画像、グラフ、バーコード、ハイパーリンク、さらには条件付きコンテンツを挿入できます。クラウドインフラストラクチャが、テンプレートの解析、計算の実行、グラフィックスのレンダリング、そして最終的に要求された形式(DOCX、PDF、HTML、PNG など)でアセンブリされたドキュメントの配信という、面倒な処理をすべて処理します。
API はプラットフォームに依存しないため、HTTP リクエストを発行できる任意の言語から呼び出すことができます。 .NET SDK は、REST 呼び出しをネイティブのオブジェクト指向 API でラップし、認証の詳細を隠蔽し、厳密に型指定されたリクエスト/レスポンス モデルを提供します。
一般的な .NET ワークフロー
groupdocs.GroupDocs.Assembly-Cloud
をプロジェクトに追加します。Configuration
オブジェクトを作成します。UploadFile
を使用してテンプレートを GroupDocs Cloud Storage に配置します。AssembleDocument
を呼び出します – SDK は単一のリクエストを送信し、レスポンスには生成されたファイルストリームが含まれます。SDK は オープンソース であり、GitHub (https://github.com/groupdocs-GroupDocs.Assembly-cloud/groupdocs-GroupDocs.Assembly-cloud-dotnet) でメンテナンスされています。定期的なアップデートが提供され、包括的なユニットテストが含まれ、セマンティックバージョニングに準拠しています。
セキュリティは組み込まれており、すべてのトラフィックは SSL/TLS で暗号化され、アクセスは 個人用 API キー によって保護されます。クライアント側で追加のソフトウェアやサードパーティ製コンポーネントは必要ありません。このサービスは完全にクラウド内で実行されるため、オンプレミス、サーバーレス、デスクトップアプリケーションに最適です。
つまり、GroupDocs.Assembly Cloud と .NET SDK を組み合わせることで、契約書、請求書、レポート、提案書、差し込み印刷レター、その他あらゆるドキュメント中心のワークフローを C# コードから直接生成できる、スケーラブルなローコード ソリューション が実現します。
このスニペットは、Assembly Cloud API を使用してテンプレートファイルをアップロードし、データソースをバインドし、ドキュメントを生成する方法を示しています。
手順
AssembleOptions
を準備し、出力形式、データ、テンプレートパスを指定します。AssembleDocument
を呼び出して、アセンブルされたファイルを受け取ります。using GroupDocs.Assembly.Cloud.Sdk;
var config = new Configuration
{
AppSid = ".#-.#-.#-.#-.#",
AppKey = "......"
};
var assemblyApi = new AssemblyApi(config);
var fileName = "Input1.docx";
var dataFile = "Input2.docx";
// Upload template
var uploadRequest = new UploadFileRequest(File.OpenRead(fileName), fileName);
assemblyApi.UploadFile(uploadRequest);
// Assemble document
var assembleOptions = new AssembleOptions
{
SaveFormat = "docx",
ReportData = File.ReadAllText(dataFile),
TemplateFileInfo = new TemplateFileInfo { FilePath = fileName }
};
var assembleRequest = new AssembleDocumentRequest(assembleOptions);
var assembledDocument = assemblyApi.AssembleDocument(assembleRequest);