Dosyaları bu siteye sürükleyip okuyordunuz. Bir noktada birileri, aynı şeyin çalıştığınız uygulama içinde yaşayıp yaşayamacağını sorar — bir dava dosyası, bir talep, bir çizim, kendi sayfanızda indirilmek yerine açılabilir. Bu mümkündür ve karar, göründüğünden daha küçüktür, çünkü sadece bir şey gerçekten değişir.

Değişen Tek Şey: Dosyanın Gittiği Yer
Burada bir belgeyi bize yüklüyorsunuz, renderlanıyor ve kapattığınızda siliniyor. Bu, bir kez gönderilen ve şimdi okunmak istenen dosya için doğru bir takas.
Kendi altyapınızda kalması gereken bir belge için yanlış bir takastır. Bir tıbbi kayıt, imzalı bir sözleşme, NDA altında bir çizim — bunlar altyapınızdan çıkamaz ve silme sözü bu sorunu çözmez, çünkü dosya hâlâ bir yerden bir yere taşınmıştır. Renderlayıcıyı gömerek tersine çevirirsiniz: belge sunucunuz tarafından, ağınız içinde açılır ve tarayıcıya sadece bir render gönderilir. Dosya asla hareket etmez.
Bu, gömmek için sebeptir. Diğer her şey detaydır.
Bir Bileşen, Bir Widget Değil
İlk olarak insanların yanlış anladığı kısım: bu, dosyayı tarayıcıda açan bir JavaScript değildir. Bu, projenize referans verdiğiniz yerel bir .NET bileşenidir ve renderleme sunucu tarafında gerçekleşir. Sayfanız sonucu alır.
İki sonuç doğurur. İyi olanı: tarayıcı hiçbir şey kurmaz — eklenti, ActiveX, okuyucu yok — bu yüzden kilitli bir masaüstünde olduğu gibi bir telefonda da aynı şekilde çalışır. Planlamanız gereken ise: sunucunuz işi yapar, bu yüzden 200 sayfalık bir PDF ile 40 MB'lık bir çizim aynı istek değildir. Kabul edeceğiniz en büyük dosya için makineyi boyutlandırın ve daha büyük dosyaları yüklemede reddedin.
Başlamadan Önce Karar Verilmesi Gerekenler
Üç soru ve hiçbiri görüntüleyiciyle ilgili değil:
- Belgeler nereden geliyor — bir veritabanı, dosya paylaşımı, blob depolama?
- Bu belgeyi kim görebilir, ve görüntüleyicinin URL'si bunu zorunlu kılıyor mu yoksa sadece varsayımlı mı? Belge kimliğiyle herkese açık bir render uç noktası klasik bir güvenlik deliğidir.
- Renderın ürettiği geçici dosyalar ne olur ve ne zaman silinir?
Bunları yanıtlayın, entegrasyon kısa sürer. Sonra bırakıp zaten çalışan bir görüntüleyiciye yetkilendirme eklemeye çalışırsanız, iş daha da zorlaşır.
Nerede Çalışır
.NET Framework 4.0 ve üzeri, .NET Standard 2.0 ve üzeri — yani WebForms, MVC, ASP.NET Core, Blazor Server ve Linux konteynerleri. Office sunucuya kurulmak zorunda değildir; renderlayıcı formatları doğrudan okur.
Sadece bugün bir dosya okumak istiyorsanız, bunun için PDF görüntüleyici ve burada listelenen diğer görüntüleyiciler vardır. Eğer düşündüğünüz uygulama, bileşen, paketleri ve API dokümantasyonu ise, bunlar Doconut.com adresinde bulunur.