Instalasi

Tambahkan Doconut ke proyek .NET 8 Anda

Penampil Doconut dasar untuk .NET 8 hadir sebagai satu paket NuGet yang dapat dipasang ke aplikasi ASP.NET Core mana pun. Plugin opsional menggunakan paket terpisah. Halaman ini menginstal paket dasar dan mendaftarkan middleware — minimum yang diperlukan sebelum render pertama Anda.

Instal paket

bash
dotnet add package Doconut.NET8

Perintah tanpa versi menginstal rilis stabil terbaru. Untuk mereproduksi rilis 26.7.0 saat ini secara tepat, berikan versi sebagai opsi terpisah:

bash
dotnet add package Doconut.NET8 --version 26.7.0

Doconut.NET8 adalah ID paket. Akhiran .26.7.0 merupakan bagian dari nama file yang diunduh Doconut.NET8.26.7.0.nupkg dan bukan bagian dari ID.

Daftarkan Doconut

AddDoconut() adalah satu-satunya titik masuk pendaftaran — ada satu overload, dan ia menghubungkan layanan Viewer, layanan lisensi, serta infrastruktur rendering ke dalam kontainer DI.

Dua pemanggilan middleware menyelesaikan pengaturan, dan urutannya penting: UseDoconutResources() harus dijalankan sebelum UseDoconut(). UseDoconut() adalah middleware terminal, jadi memanggilnya terlebih dahulu berarti setiap permintaan ke aset /doconut-res tidak pernah mencapai penangan sumber daya dan menghasilkan 404. Penyambungan sesi juga diperlukan — keamanan dokumen default Doconut memvalidasi setiap permintaan halaman terhadap status sesi ASP.NET.

csharp
builder.Services.AddDoconut(options =>
{
    options.LicensePath = "Doconut.Viewer.lic";
});
builder.Services.AddDistributedMemoryCache(); // status sesi membutuhkan cache (MVC/Razor Pages sudah menambah satu)
builder.Services.AddSession(); // keamanan dokumen Doconut bergantung pada status sesi ASP.NET

app.UseSession();          // panggil UseSession() sebelum UseDoconut()
app.UseDoconutResources(); // harus didaftarkan sebelum UseDoconut()
app.UseDoconut();

Semua opsi

DoconutOptions menerima properti yang dapat diatur berikut ini. Semua bersifat opsional — nilai default di bawah ini berlaku ketika sebuah properti tidak diatur.

PropertyDefaultDescription
ShowDoconutInfofalseKetika true, permintaan tanpa token mengembalikan banner versi alih-alih 404. Berguna sebagai pemeriksaan cepat; matikan di produksi.
UnsafeModefalseKetika true, melewati pemeriksaan keamanan sesi ASP.NET pada permintaan halaman. Matikan di produksi.
MiddlewarePath"/doconut"Nilai koordinasi untuk endpoint halaman-gambar. Nilai ini divalidasi, tetapi tidak membuat cabang sendiri; pertahankan agar selaras dengan pemetaan UseDoconut() yang sebenarnya dan BasePath klien.
ResourcesPath"/doconut-res"Tempat dimana sumber daya JS/CSS/gambar yang tersemat disajikan.
LicensePath"" (empty string)Jalur ke file lisensi. Kosong berarti melanjutkan ke sumber berikutnya, lalu pencarian otomatis.
LicenseContent"" (empty string)Konten lisensi mentah — dari variabel lingkungan, manajer rahasia, atau basis data.
LicenseStreamnullLisensi sebagai aliran, dibaca sekali saat startup.
ResetLicensefalseBendera kompatibilitas yang disiapkan. Layanan .NET 8 saat ini membaca lisensi selama AddDoconut(); restart aplikasi setelah mengganti lisensi.

Prioritas lisensi ketika lebih dari satu sumber diatur: LicenseStream mengalahkan LicenseContent mengalahkan LicensePath mengalahkan pencarian otomatis — lihat License Setup.

csharp
builder.Services.AddDoconut(options =>
{
    options.LicensePath     = "Doconut.Viewer.lic";
    options.MiddlewarePath  = "/doconut";     // koordinasikan dengan pemetaan aplikasi dan BasePath klien
    options.ResourcesPath   = "/doconut-res"; // tempat JS/CSS/gambar penampil disajikan
    options.UnsafeMode      = false;          // pertahankan keamanan sesi aktif
    options.ShowDoconutInfo = false;
});

Langkah selanjutnya

Apakah halaman ini membantu?