Adım adım Öğretici: Geliştiricilerin ASP.NET Core, MVC veya WebForms uygulamalarına güvenli, eklenti‑sız bir belge görüntüleyici yerleştirmesi
24.07.2026

Adım adım Öğretici: Geliştiricilerin ASP.NET Core, MVC veya WebForms uygulamalarına güvenli, eklenti‑sız bir belge görüntüleyici yerleştirmesi

ASP.NET Core, MVC veya WebForms içinde Doconut Viewer SDK'sını nasıl yerleştireceğiniz: 75 dosya formatı, DOC'tan PDF'ye dönüşüm ve güvenliğin nereden geldiği.

Birçok geliştirici, web uygulamasında belge görüntülemek istediklerinde UI bileşen kütüphaneleri aramaya başlar. Doconut Görüntüleyici .NET SDK'sı, ASP.NET Core, MVC veya klasik WebForms projelerine eklenti‑sız tarayıcı görüntüleme eklemek için tasarlanmıştır. Güvenlik hâlâ tam uygulama mimarisine bağlıdır: kimlik doğrulama, yetkilendirme, taşıma, depolama, doğrulama, temizlik, yamalama ve izleme.

Katmanlı uygulama kontrolleriyle korunan güvenli ASP.NET belge görüntüleyici
Katmanlı uygulama kontrolleriyle korunan güvenli ASP.NET belge görüntüleyici

1. Doconut App SDK'sını Kurun ve .NET Projenizi Birden Çok Dosya Formatı İçin Hazırlayın

1.1 Desteklenen paketi ekleyin

Resmi Doconut indirme sayfasındaki mevcut paketi ve kurulum talimatlarını kullanın. Seçilen sürümü kaydedin ve hedef .NET çalışma zamanını desteklediğini doğrulayın.

1.2 Paket referansını doğrulayın

Kurulumdan sonra, proje dosyasında paket referansını ve çözülen sürümü onaylayın. Sürümleri açık tutmak, derlemelerin ve dağıtımların tekrarlanabilir olmasına yardımcı olur.

1.3 HTTPS'yi etkinleştirin

Uygulamayı HTTPS üzerinden sunarak yüklenen belgelerin ağınızda düz metin olarak dolaşmasını önleyin. Kestrel‑hostlu bir uygulama için, appsettings.json dosyasına bir uç nokta yapılandırması ekleyin:

 {
   "Kestrel": {
     "Endpoints": {
       "Https": {
         "Url": "
       }
     }
   }
 }

IIS üzerinde barındırıyorsanız, siteye bir HTTPS sertifikası bağlayın. HTTPS etkinleştirildiğinde, dosya kendi sunucunuza doğru güvenli bir kanal üzerinden iletilir; SDK da burada dosyayı işler.

Güvenliğin nereden geldiği. SDK, uygulamanızın içinde, altyapınızda çalışır: Doconut sunucularına hiçbir çağrı yapmaz, bu yüzden belgeler ağınızdan asla çıkmaz. Bu, tasarımda göz önünde bulundurulması gereken bir özelliktir. Bu bir uyumluluk sertifikası değildir — SDK kendi başına ISO 27001, SOC 2 veya HIPAA onayı taşımaz ve uygulamanıza böyle bir onay veremez. Yaptığı şey, dosyayı zaten kontrol ettiğiniz ve denetlediğiniz bir sınır içinde tutmaktır.

2. Belge Yönetimi için Güvenli Dosya Yüklemeleri ve Depolamayı Yapılandırın

Bu, SDK'nın değil sizin sorumluluğunuzdaki kısımdır ve açıkça söylemek gerekir: taşıma güvenliği, dinlenme halindeki şifreleme, saklama süresi ve temizlik, uygulamanızın aldığı kararlardır. SDK belgeleri işler; bir depolama katmanı değildir ve diskinizi sizin için şifrelemez.

2.1 Servisleri kaydedin

Startup.cs dosyasında (veya modern .NET'te Program.cs içinde), kurduğunuz sürümün belgelerine uygun olarak Doconut servislerini bağımlılık enjeksiyon konteynerine kaydedin. SDK geçici render çıktısı için bir çalışma klasörüne ihtiyaç duyduğunda, kontrol ettiğiniz bir konuma yönlendirin ve bu klasörün temizliğini sizin sorumluluğunuzda tutun — zamanlanmış bir görev ya da uygulama‑yönetimli bir ömür, varsayım değil.

2.2 Yükleme uç noktasını oluşturun

Yüklenen bir dosyayı alan, uygulamanızın zaten kullandığı depoya kaydeden ve kısa bir tek‑kullanımlık token döndüren bir denetleyici eylemi uygulayın. Token, istemci‑tarafı görüntüleyicinin belgeyi alıp render etmesi için kullanılır. Depolamanın sizin sorumluluğunuzda olduğunu unutmayın: render zamanı geldiğinde SDK'ye baytları ya da yolu verirsiniz ve SDK size sayfaları geri verir.

2.3 Uç noktayı koruyun

Yükleme uç noktası hassas verilerle ilgilendiği için, kimlik doğrulama ve rol‑tabanlı yetkilendirme ile koruyun (örneğin, yalnızca DocumentViewer rolündeki kullanıcılar yükleme yapabilir). Uzantıyı ve dosya boyutunu sunucu tarafında ve tarayıcıda doğrulayın ve yüklenen baytları güvensiz giriş olarak ele alın.

SDK'nın bunu kapsadığı varsayımıyla atlamayın. Dinlenme halindeki şifreleme, anahtar yönetimi ve yalnız kalan dosyaların temizliği uygulamanızın sorumluluğundadır. Diskte şifreli belgeler gerekiyorsa, zaten güvendiğiniz platform olanaklarını kullanın — görüntüleyici bu iş için uygun bir yer değildir.

3. Viewer Bileşenini ASP.NET Core, MVC, veya WebForms içinde Gömme

Arka uç hazır olduğunda, yüklü Doconut sürümü için belgelenen varlıkları ve API'yi kullanarak viewer'ı başlatın.

3.1 JavaScript paketini ekleyin

Paylaşılan düzeninizde, yüklü SDK ile eşleşen belgelerde açıklanan yalnızca viewer kaynaklarını ekleyin. Sürümler arasında sabit paket adları veya konumları olduğunu varsaymayın.

3.2 Core/MVC için bir Razor görünümü oluşturun

Bir görünüm ekleyin (ör. Views/Document/View.cshtml); bu görünüm bir dosya girişi, viewer için bir konteyner öğesi ve seçilen dosyayı yükleyen, güvenli token'ı alan ve Doconut Viewer widget'ını başlatan küçük bir betik içerir.

Betik şunları yapmalıdır:

  1. Seçilen dosyayı <input type="file"> öğesinden yakalayın.
  2. fetch veya XMLHttpRequest kullanarak dosyayı yükleme uç noktasına gönderin.
  3. Yetkili yanıt geldiğinde, yüklü sürüm için desteklenen API'yi kullanarak viewer'ı başlatın.

3.3 WebForms eşdeğeri

Bir WebForms sayfasında (ör. DocumentViewer.aspx), bir asp:FileUpload kontrolü, yüklemeyi tetikleyen bir düğme ve viewer'ı barındıracak bir <div> yerleştirin. Kod‑arkasında, yüklenen dosyayı depolamak için Doconut hizmetini çağırın, token'ı alın ve viewer örneğini oluşturmak için bir JavaScript işlevi (initViewer(token)) çağıran bir başlangıç betiği kaydedin.

Bunu bu şekilde yapmanın nedeni: son kullanıcının makinesine hiçbir şey kurmadan üç .NET UI modeline hizmet veren tek bir render yolu.


4. Viewer'ı Belge Yönetimi için Özelleştirme

Viewer, kendi sayfanızdaki bir konteyner içinde render eder, bu yüzden çevreleyen uygulama zaten sizindir. Bunun ötesinde, kurduğunuz sürümün belgelerinden seçenek adlarını ve varsayılanları alın; herhangi bir öğreticiden, bu dahil, almayın — yapılandırma yüzeyi sürümler arasında değişir ve sabit kodlanmış bir seçenek adı yükseltmede en çok kırılmaya eğilimli olanıdır.

Önceden karar vermeye değer şeyler:

4.1 Kullanıcının elde edeceği kontroller

Kullanıcılarınızın orijinal dosyayı indirme yetkisine sahip olup olmayacağına, ya da yalnızca render edilen sayfaları okuyabileceklerine karar verin. Kontrollü baskı, ayrı bir satın alma yerine viewer'ın bir parçasıdır; bu yüzden baskı kuralları bir lisans sorunu değil, bir yapılandırma sorusudur.

4.2 Gerçekten ihtiyaç duyduğunuz eklentiler

Dört tanesi ayrı ayrı lisanslanır ve liste ezberlemeye değer kadar kısadır: Annotation, Converter, DICOM ve Search. Dönüştürme — DOC'tan PDF'ye ve diğerleri — Converter eklentisidir. Metin arama ise Search eklentisidir. Hiçbirine ihtiyacınız yoksa, hiçbirini satın almazsınız.

4.3 Yerelleştirme

Uygulamanız çok dilli ise, tasarım yapmadan önce yüklü sürümün viewer UI dizgileri için ne sunduğunu kontrol edin.

Bunun önemi: viewer, ürününüzün bir parçası gibi görünmelidir. Yapmaması gereken şey, lisansını aldığınız özellikleri kullanıcılarınıza sessizce vaat etmektir.


5. En Desteklenen Tüm Formatlarda Entegrasyonu Test Etme

Canlıya geçmeden önce, kullanıcılarınızın görüntülemesini beklediğiniz her dosya türü için hızlı bir mantık kontrolü yapın. Doconut App'in viewer'ını kullanarak, her formatta bir örnek dosya açın ve render, gezinme ve özel araçların açıklandığı gibi çalıştığını doğrulayın.

FormatTest SenaryosuBeklenen Sonuç
PDFGömülü görüntüler içeren büyük, çok sayfalı raporPürüzsüz kaydırma, yakınlaştırma ve doğru renk render'ı
DOCXTablolar ve dipnotlar içeren Word belgesiTüm metin, tablolar ve dipnotlar görünür; düzen kayması yok
XLSXGrafikler içeren elektronik tabloGrafikler vektör grafik olarak render edilir; yakınlaştırma netliğini korur
PPTXAnimasyonlu yapılar içeren slayt setiBir slayttaki her yapı bir çerçevede üst üste render edilir — bu beklenen bir durum, bir hata değil
DWGKatmanlar ve dış referanslar içeren teknik çizimKatmanlar açılıp kapanabilir, mesafe ve alan ölçümleri çalışır; xref'ler ve SHX yazı tipleri dosyada hiç bulunmadığı için yoktur
PSDKatmanlı Photoshop dosyasıKaydedilen birleşik render edilir, gizli katmanlar gizli kalır; renkler yakınlaştırmada korunur
SVGGradyanlı vektör grafikGradyanlar sorunsuz render edilir; yakınlaştırma keskin kalır
TIFFYüksek çözünürlüklü taramaGörüntü hızlı yüklenir; yakınlaştırma detayları ortaya çıkarır

Gerçek kullanıcı dosyalarınızla test edin, temiz örneklerle değil. İnsanları şaşırtan formatlar, tuhaflıkları formatın içinde olanlardır — dört başka çizime referans veren bir DWG, saklanan değerleri hiç yeniden hesaplanmamış bir elektronik tablo, yazı tipleri gömülmemiş bir sunum. Ücretsiz viewer, Doconut.app adresinde aynı motoru çalıştırır, bu yüzden herhangi bir kod yazmadan önce belirli bir zor dosyanın nasıl çıktığını hızlıca görmenin bir yoludur.

Sonuç

Eklentisiz bir belge görüntüleyiciyi yerleştirmek dört şeye dayanır: SDK'yı kurmak, kendi yükleme yolunuzu güvence altına almak, sayfanızdaki bir konteynıra render etmek ve yalnızca kurulu sürümün belgelediği şeyleri yapılandırmak. Görüntüleyicinin güvenliğe katkısı dar ve gerçektir — kendi sunucularınızda çalışır ve hiçbir şey göndermez. Listede kalan her şey uygulamanıza aittir ve hiçbir SDK bunu sizin yerinize üstlenemez.

Değerlendirmeye hazır mısınız? Başlamak için resmi Doconut indirme ve dokümantasyon sayfası adresini ziyaret edin, ardından SDK'yı Windows tabanlı ASP.NET uygulamanızın geri kalanına uygulanan aynı güvenlik incelemesi kapsamında test edin.