<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>csharp on Document Processing REST APIs | GroupDocs Cloud</title>
    <link>https://blog-qa.groupdocs.cloud/id/tag/csharp/</link>
    <description>Recent content in csharp on Document Processing REST APIs | GroupDocs Cloud</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>id</language>
    <lastBuildDate>Fri, 09 Oct 2026 14:45:06 +0000</lastBuildDate><atom:link href="https://blog-qa.groupdocs.cloud/id/tag/csharp/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Bandingkan File Excel melalui REST di C#</title>
      <link>https://blog-qa.groupdocs.cloud/id/comparison/compare-excel-files-via-rest-in-csharp/</link>
      <pubDate>Fri, 09 Oct 2026 14:45:06 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/id/comparison/compare-excel-files-via-rest-in-csharp/</guid>
      <description>Pelajari cara membandingkan file Excel melalui REST di C# menggunakan GroupDocs.Comparison Cloud SDK for .NET. Ikuti panduan singkat dengan kode, cURL, dan langkah‑langkah penyiapan.</description>
      <content:encoded><![CDATA[<p>Membandingkan lembar kerja Excel secara programatik adalah kebutuhan yang sering muncul ketika Anda perlu mendeteksi perubahan data, mengaudit revisi, atau menghasilkan laporan. <a href="https://products.groupdocs.cloud/comparison/net/">GroupDocs.Comparison Cloud SDK for .NET</a> menyediakan pustaka berbasis REST yang kuat yang memudahkan membandingkan file Excel melalui REST di C#. Panduan ini memandu Anda melalui proses mengunggah file, mengonfigurasi opsi perbandingan, mengeksekusi perbandingan, dan mengambil hasilnya, dengan contoh kode C# dan cURL.</p>
<h2 id="membandingkan-file-excel-via-rest-di-c-dalam-5-langkah">Membandingkan File Excel via REST di C# dalam 5 Langkah</h2>
<ol>
<li><strong>Unggah file sumber <a href="https://docs.fileformat.com/spreadsheet/xlsx/">XLSX</a></strong>: Gunakan metode <code>StorageApi.UploadFile</code> untuk menempatkan <code>sample1.xlsx</code> di penyimpanan cloud.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csharp" data-lang="csharp"><span style="display:flex;"><span><span style="color:#66d9ef">using</span> (<span style="color:#66d9ef">var</span> stream1 = <span style="color:#66d9ef">new</span> FileStream(localFilePath1, FileMode.Open, FileAccess.Read))
</span></span><span style="display:flex;"><span>{
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">var</span> uploadRequest1 = <span style="color:#66d9ef">new</span> UploadFileRequest(remoteFilePath1, stream1);
</span></span><span style="display:flex;"><span>    storageApi.UploadFile(uploadRequest1);
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><ol start="2">
<li><strong>Unggah file XLSX target</strong>: Ulangi proses unggah untuk <code>sample2.xlsx</code>.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csharp" data-lang="csharp"><span style="display:flex;"><span><span style="color:#66d9ef">using</span> (<span style="color:#66d9ef">var</span> stream2 = <span style="color:#66d9ef">new</span> FileStream(localFilePath2, FileMode.Open, FileAccess.Read))
</span></span><span style="display:flex;"><span>{
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">var</span> uploadRequest2 = <span style="color:#66d9ef">new</span> UploadFileRequest(remoteFilePath2, stream2);
</span></span><span style="display:flex;"><span>    storageApi.UploadFile(uploadRequest2);
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><ol start="3">
<li><strong>Konfigurasikan opsi perbandingan</strong>: Buat objek <code>CompareOptions</code>, tetapkan jalur file sumber dan target, tentukan jalur output, serta sesuaikan pengaturan seperti <code>GenerateSummaryPage</code>.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csharp" data-lang="csharp"><span style="display:flex;"><span><span style="color:#66d9ef">var</span> compareOptions = <span style="color:#66d9ef">new</span> CompareOptions
</span></span><span style="display:flex;"><span>{
</span></span><span style="display:flex;"><span>    SourceFile = <span style="color:#66d9ef">new</span> FileInfo { FilePath = remoteFilePath1 },
</span></span><span style="display:flex;"><span>    TargetFiles = <span style="color:#66d9ef">new</span> List&lt;FileInfo&gt;
</span></span><span style="display:flex;"><span>    {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">new</span> FileInfo { FilePath = remoteFilePath2 }
</span></span><span style="display:flex;"><span>    },
</span></span><span style="display:flex;"><span>    OutputPath = remoteResultPath,
</span></span><span style="display:flex;"><span>    Settings = <span style="color:#66d9ef">new</span> Settings
</span></span><span style="display:flex;"><span>    {
</span></span><span style="display:flex;"><span>        GenerateSummaryPage = <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>        ShowDeletedContent = <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>        ShowInsertedContent = <span style="color:#66d9ef">true</span>
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>};
</span></span></code></pre></div><p>Lihat referensi API lengkap untuk <code>CompareOptions</code> dan <code>Settings</code> di <a href="https://reference.groupdocs.cloud/comparison/">API Reference</a>.<br>
4. <strong>Jalankan perbandingan</strong>: Panggil <code>CompareApi.CompareDocument</code> dengan <code>CompareDocumentRequest</code>.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csharp" data-lang="csharp"><span style="display:flex;"><span><span style="color:#66d9ef">var</span> compareRequest = <span style="color:#66d9ef">new</span> CompareDocumentRequest(compareOptions);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">var</span> compareResult = compareApi.CompareDocument(compareRequest);
</span></span></code></pre></div><ol start="5">
<li><strong>Unduh hasil dan bersihkan</strong>: Ambil <code>result.xlsx</code> yang dihasilkan, simpan secara lokal, dan secara opsional hapus file remote.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csharp" data-lang="csharp"><span style="display:flex;"><span><span style="color:#66d9ef">var</span> downloadRequest = <span style="color:#66d9ef">new</span> DownloadFileRequest(compareResult.Path);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> (<span style="color:#66d9ef">var</span> resultStream = storageApi.DownloadFile(downloadRequest))
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> (<span style="color:#66d9ef">var</span> fileStream = <span style="color:#66d9ef">new</span> FileStream(localResultPath, FileMode.Create, FileAccess.Write))
</span></span><span style="display:flex;"><span>{
</span></span><span style="display:flex;"><span>    resultStream.CopyTo(fileStream);
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Clean up</span>
</span></span><span style="display:flex;"><span>storageApi.DeleteFile(<span style="color:#66d9ef">new</span> DeleteFileRequest(remoteFilePath1));
</span></span><span style="display:flex;"><span>storageApi.DeleteFile(<span style="color:#66d9ef">new</span> DeleteFileRequest(remoteFilePath2));
</span></span><span style="display:flex;"><span>storageApi.DeleteFile(<span style="color:#66d9ef">new</span> DeleteFileRequest(remoteResultPath));
</span></span></code></pre></div><h2 id="contoh-kode-lengkap-bandingkan-file-excel-via-rest-dalam-c-menggunakan-groupdocscomparison">Contoh Kode Lengkap: Bandingkan File Excel via REST dalam C# Menggunakan GroupDocs.Comparison</h2>
<p>Contoh ini menunjukkan cara mengunggah dua file XLSX, membandingkannya, dan mengunduh hasil yang disorot.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csharp" data-lang="csharp"><span style="display:flex;"><span><span style="color:#66d9ef">using</span> System;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> System.Collections.Generic;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> System.IO;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> GroupDocs.Comparison.Cloud.Sdk.Api;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> GroupDocs.Comparison.Cloud.Sdk.Client;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> GroupDocs.Comparison.Cloud.Sdk.Model;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> GroupDocs.Comparison.Cloud.Sdk.Model.Requests;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">namespace</span> CompareExcelFilesExample
</span></span><span style="display:flex;"><span>{
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">class</span> <span style="color:#a6e22e">Program</span>
</span></span><span style="display:flex;"><span>    {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">static</span> <span style="color:#66d9ef">void</span> Main(<span style="color:#66d9ef">string</span>[] args)
</span></span><span style="display:flex;"><span>        {
</span></span><span style="display:flex;"><span>            <span style="color:#75715e">// Configuration – replace with your actual credentials</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">var</span> config = <span style="color:#66d9ef">new</span> Configuration
</span></span><span style="display:flex;"><span>            {
</span></span><span style="display:flex;"><span>                ClientId = <span style="color:#e6db74">&#34;YOUR_CLIENT_ID&#34;</span>,
</span></span><span style="display:flex;"><span>                ClientSecret = <span style="color:#e6db74">&#34;YOUR_CLIENT_SECRET&#34;</span>
</span></span><span style="display:flex;"><span>            };
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// APIs</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">var</span> compareApi = <span style="color:#66d9ef">new</span> CompareApi(config);
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">var</span> storageApi = <span style="color:#66d9ef">new</span> StorageApi(config);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Local and remote file names</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">string</span> localFilePath1 = <span style="color:#e6db74">&#34;sample1.xlsx&#34;</span>;
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">string</span> localFilePath2 = <span style="color:#e6db74">&#34;sample2.xlsx&#34;</span>;
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">string</span> remoteFilePath1 = <span style="color:#e6db74">&#34;sample1.xlsx&#34;</span>;
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">string</span> remoteFilePath2 = <span style="color:#e6db74">&#34;sample2.xlsx&#34;</span>;
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">string</span> remoteResultPath = <span style="color:#e6db74">&#34;result.xlsx&#34;</span>;
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">string</span> localResultPath = <span style="color:#e6db74">&#34;result.xlsx&#34;</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Upload first Excel file</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">using</span> (<span style="color:#66d9ef">var</span> stream1 = <span style="color:#66d9ef">new</span> FileStream(localFilePath1, FileMode.Open, FileAccess.Read))
</span></span><span style="display:flex;"><span>            {
</span></span><span style="display:flex;"><span>                <span style="color:#66d9ef">var</span> uploadRequest1 = <span style="color:#66d9ef">new</span> UploadFileRequest(remoteFilePath1, stream1);
</span></span><span style="display:flex;"><span>                storageApi.UploadFile(uploadRequest1);
</span></span><span style="display:flex;"><span>            }
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Upload second Excel file</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">using</span> (<span style="color:#66d9ef">var</span> stream2 = <span style="color:#66d9ef">new</span> FileStream(localFilePath2, FileMode.Open, FileAccess.Read))
</span></span><span style="display:flex;"><span>            {
</span></span><span style="display:flex;"><span>                <span style="color:#66d9ef">var</span> uploadRequest2 = <span style="color:#66d9ef">new</span> UploadFileRequest(remoteFilePath2, stream2);
</span></span><span style="display:flex;"><span>                storageApi.UploadFile(uploadRequest2);
</span></span><span style="display:flex;"><span>            }
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Prepare comparison options</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">var</span> compareOptions = <span style="color:#66d9ef">new</span> CompareOptions
</span></span><span style="display:flex;"><span>            {
</span></span><span style="display:flex;"><span>                SourceFile = <span style="color:#66d9ef">new</span> FileInfo { FilePath = remoteFilePath1 },
</span></span><span style="display:flex;"><span>                TargetFiles = <span style="color:#66d9ef">new</span> List&lt;FileInfo&gt;
</span></span><span style="display:flex;"><span>                {
</span></span><span style="display:flex;"><span>                    <span style="color:#66d9ef">new</span> FileInfo { FilePath = remoteFilePath2 }
</span></span><span style="display:flex;"><span>                },
</span></span><span style="display:flex;"><span>                OutputPath = remoteResultPath,
</span></span><span style="display:flex;"><span>                Settings = <span style="color:#66d9ef">new</span> Settings
</span></span><span style="display:flex;"><span>                {
</span></span><span style="display:flex;"><span>                    <span style="color:#75715e">// Example: show changes in a new sheet</span>
</span></span><span style="display:flex;"><span>                    GenerateSummaryPage = <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>                    ShowDeletedContent = <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>                    ShowInsertedContent = <span style="color:#66d9ef">true</span>
</span></span><span style="display:flex;"><span>                }
</span></span><span style="display:flex;"><span>            };
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Execute comparison</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">var</span> compareRequest = <span style="color:#66d9ef">new</span> CompareDocumentRequest(compareOptions);
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">var</span> compareResult = compareApi.CompareDocument(compareRequest);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Download the result file</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">var</span> downloadRequest = <span style="color:#66d9ef">new</span> DownloadFileRequest(compareResult.Path);
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">using</span> (<span style="color:#66d9ef">var</span> resultStream = storageApi.DownloadFile(downloadRequest))
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">using</span> (<span style="color:#66d9ef">var</span> fileStream = <span style="color:#66d9ef">new</span> FileStream(localResultPath, FileMode.Create, FileAccess.Write))
</span></span><span style="display:flex;"><span>            {
</span></span><span style="display:flex;"><span>                resultStream.CopyTo(fileStream);
</span></span><span style="display:flex;"><span>            }
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Optional: clean up remote files</span>
</span></span><span style="display:flex;"><span>            storageApi.DeleteFile(<span style="color:#66d9ef">new</span> DeleteFileRequest(remoteFilePath1));
</span></span><span style="display:flex;"><span>            storageApi.DeleteFile(<span style="color:#66d9ef">new</span> DeleteFileRequest(remoteFilePath2));
</span></span><span style="display:flex;"><span>            storageApi.DeleteFile(<span style="color:#66d9ef">new</span> DeleteFileRequest(remoteResultPath));
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>Console.WriteLine(<span style="color:#e6db74">&#34;Comparison completed. Result saved to &#34;</span> + localResultPath);
</span></span><span style="display:flex;"><span>        }
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><blockquote>
<p><strong>Catatan:</strong> Contoh kode ini menunjukkan fungsi inti. Sebelum menggunakannya dalam proyek Anda, pastikan untuk memperbarui semua jalur file dan nilai konfigurasi agar sesuai dengan lingkungan Anda yang sebenarnya, verifikasi bahwa semua dependensi yang diperlukan telah terpasang dengan benar, dan uji secara menyeluruh di lingkungan pengembangan Anda. Jika Anda menemukan masalah, silakan merujuk ke <a href="https://docs.groupdocs.cloud/comparison/">dokumentasi resmi</a> atau hubungi <a href="https://forum.groupdocs.cloud/c/comparison/12">tim dukungan</a> untuk bantuan.</p>
</blockquote>
<h2 id="memanggil-api-rest-comparison-dengan-curl">Memanggil API REST Comparison dengan cURL</h2>
<p>Berikut adalah alur kerja cURL yang melakukan operasi yang sama tanpa menulis kode C#. Ganti nilai placeholder dengan kredensial dan nama file Anda yang sebenarnya.</p>
<ol>
<li>
<p><strong>Dapatkan token akses</strong></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/oauth2/token&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/json&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -d <span style="color:#e6db74">&#39;{&#34;client_id&#34;:&#34;YOUR_CLIENT_ID&#34;,&#34;client_secret&#34;:&#34;YOUR_CLIENT_SECRET&#34;}&#39;</span>
</span></span></code></pre></div></li>
<li>
<p><strong>Unggah file XLSX sumber</strong></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X PUT <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/sample1.xlsx&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     --data-binary <span style="color:#e6db74">&#34;@sample1.xlsx&#34;</span>
</span></span></code></pre></div></li>
<li>
<p><strong>Unggah file XLSX target</strong></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X PUT <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/sample2.xlsx&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     --data-binary <span style="color:#e6db74">&#34;@sample2.xlsx&#34;</span>
</span></span></code></pre></div></li>
<li>
<p><strong>Jalankan perbandingan</strong></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/comparison/compare&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/json&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -d <span style="color:#e6db74">&#39;{
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;source_file&#34;: {&#34;file_path&#34;: &#34;sample1.xlsx&#34;},
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;target_files&#34;: [{&#34;file_path&#34;: &#34;sample2.xlsx&#34;}],
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;output_path&#34;: &#34;result.xlsx&#34;,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;settings&#34;: {
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               &#34;generate_summary_page&#34;: true,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               &#34;show_deleted_content&#34;: true,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               &#34;show_inserted_content&#34;: true
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           }
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">         }&#39;</span>
</span></span></code></pre></div></li>
<li>
<p><strong>Unduh hasil</strong></p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X GET <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/result.xlsx&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -o result.xlsx
</span></span></code></pre></div></li>
</ol>
<p>Untuk daftar lengkap endpoint dan parameter, lihat <a href="https://docs.groupdocs.cloud/comparison/">dokumentasi API resmi</a>.</p>
<h2 id="prasyarat-dan-penyiapan">Prasyarat dan Penyiapan</h2>
<ol>
<li>Instal paket .NET melalui NuGet:</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>dotnet add package GroupDocs.Comparison-Cloud
</span></span></code></pre></div><ol start="2">
<li>Pastikan Anda memiliki akun GroupDocs Cloud yang valid dan dapatkan <strong>Client Id</strong> serta <strong>Client Secret</strong> Anda dari dasbor.</li>
<li>.NET 6.0 atau yang lebih baru diperlukan.</li>
</ol>
<p>Anda dapat mengunduh pustaka terbaru dari <a href="https://releases.groupdocs.cloud/comparison/net/">halaman unduhan</a>.</p>
<h2 id="penyempurnaan-pengaturan-perbandingan">Penyempurnaan Pengaturan Perbandingan</h2>
<p>Objek <code>Settings</code> di dalam <code>CompareOptions</code> memungkinkan Anda mengontrol output. Penyesuaian umum meliputi:</p>
<ul>
<li><strong>GenerateSummaryPage</strong> - menambahkan lembar ringkasan dengan statistik perubahan.</li>
<li><strong>ShowDeletedContent</strong> - menyoroti sel yang dihapus.</li>
<li><strong>ShowInsertedContent</strong> - menyoroti sel yang baru ditambahkan.</li>
</ul>
<p>Properti ini sudah digunakan dalam contoh kode di atas. Untuk opsi tambahan seperti perlindungan <code>Password</code> atau <code>StyleChangeDetection</code>, lihat <a href="https://reference.groupdocs.cloud/comparison/">API Reference</a>.</p>
<h2 id="kesimpulan">Kesimpulan</h2>
<p>Membandingkan file Excel melalui REST di C# menjadi mudah dengan <a href="https://products.groupdocs.cloud/comparison/net/">GroupDocs.Comparison Cloud SDK for .NET</a>. Dengan mengikuti langkah-langkah, Anda dapat mengunggah file XLSX, mengonfigurasi pengaturan perbandingan yang detail, menjalankan perbandingan, dan mengambil workbook hasil yang jelas menandai perbedaan. Ingatlah untuk mengamankan kredensial API Anda, menghormati batas ukuran file, dan menggunakan lisensi sementara untuk pengembangan. Saat Anda siap untuk produksi, beli lisensi penuh dari <a href="https://purchase.groupdocs.cloud/temporary-license/">halaman harga</a> untuk membuka penggunaan tak terbatas.</p>
<h2 id="faqs">FAQs</h2>
<ul>
<li>
<p><strong>Bagaimana cara membandingkan file Excel melalui REST di C# menggunakan GroupDocs.Comparison?</strong><br>
Gunakan SDK untuk mengunggah dua file XLSX, atur <code>CompareOptions</code>, panggil <code>CompareDocument</code>, dan unduh file hasilnya. Alur kerja lengkap diilustrasikan dalam bagian kode dan cURL di atas.</p>
</li>
<li>
<p><strong>Metode otentikasi apa yang dibutuhkan oleh REST API?</strong><br>
API menggunakan OAuth 2.0 dengan client‑id dan client‑secret Anda untuk memperoleh token akses, yang harus dikirim dalam header <code>Authorization: Bearer</code> untuk setiap permintaan.</p>
</li>
<li>
<p><strong>Apakah saya dapat menyesuaikan perubahan mana yang disorot dalam hasil perbandingan?</strong><br>
Ya. Sesuaikan objek <code>Settings</code> (misalnya, <code>GenerateSummaryPage</code>, <code>ShowDeletedContent</code>, <code>ShowInsertedContent</code>) untuk mengontrol tampilan perbedaan.</p>
</li>
<li>
<p><strong>Apakah lisensi sementara cukup untuk pengujian?</strong><br>
Lisensi sementara dari <a href="https://purchase.groupdocs.cloud/temporary-license/">halaman lisensi sementara</a> berfungsi untuk pengembangan dan pengujian. Untuk penyebaran produksi, dapatkan lisensi penuh.</p>
</li>
</ul>
<h2 id="baca-selengkapnya">Baca Selengkapnya</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/id/comparison/compare-excel-files-using-rest-api-in-python/">Bandingkan File Excel menggunakan REST API di Python</a></li>
<li><a href="https://blog.groupdocs.cloud/id/comparison/compare-two-excel-sheets-and-highlight-differences-using-java/">Bandingkan File Excel dan Sorot Perbedaan dalam Java menggunakan REST API</a></li>
<li><a href="https://blog.groupdocs.cloud/id/comparison/compare-pdf-files-using-rest-api-in-python/">Bandingkan File PDF menggunakan REST API di Python</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
