.NET Framework'te Kurulum

Web.config Yapılandırması

HttpHandler'ı web.config dosyanıza kaydedin.

Below IIS 7
<httpHandlers>
  <add verb="GET,POST" path="DocImage.axd" type="Doconut.DocImageHandler, Doconut" />
</httpHandlers>
IIS 7 and above
<handlers>
  <add name="DocImage" verb="GET,POST" path="DocImage.axd" type="Doconut.DocImageHandler, Doconut" />
</handlers>

Lisansları Ekle

Doconut, kök klasördeki lisansları otomatik olarak algılar, ya da bunları manuel olarak ekleyebilirsiniz.

Manual License Path
var licenseFilePath = Server.MapPath("~/Doconut.Viewer.lic");
var docViewer = new Viewer(licenseFilePath);

web.config için Yapılandırma

Aşağıdaki yapılandırma girdileri, web.config dosyasının Doconut ve .NET Framework ile uyumlu olmasını sağlamak için gereklidir.

web.config
<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.1.2" newVersion="4.0.1.2" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Text.Encodings.Web" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-8.0.0.0" newVersion="8.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Text.Encoding.CodePages" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-8.0.0.0" newVersion="8.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Text.Json" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="8.0.3.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-8.0.0.0" newVersion="8.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Drawing.Common" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="MessagePack" publicKeyToken="9c7f9b36b37eaddf" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.5.140.0" newVersion="2.5.140.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.1.3.0" newVersion="4.1.4.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

Gerekli NuGet Paketleri

Projenizin Doconut ve .NET Framework ile tam uyumlu olmasını sağlamak için aşağıdaki NuGet paketlerinin eklenmesi gerekir:

  • MessagePack - Version 2.5.140
  • MessagePack.Annotations - Version 2.5.140
  • Microsoft.Bcl.AsyncInterfaces - Version 8.0.0
  • Microsoft.NET.StringTools - Version 17.6.3
  • System.Collections.Immutable - Version 6.0.0
  • System.Drawing.Common - Version 6.0.0
  • System.Memory - Version 4.5.5
  • System.Reflection.Emit - Version 4.7.0
  • System.Reflection.Emit.Lightweight - Version 4.7.0
  • System.Security.Cryptography.Pkcs - Version 8.0.0
  • System.Text.Encoding.CodePages - Version 8.0.0
  • System.Text.Encodings.Web - Version 8.0.0
  • System.Text.Json - Version 8.0.3

Render Yapılandırma Seçenekleri

Aşağıdaki seçenekleri kullanarak render davranışını yapılandırabilirsiniz:

  • CadConfig: DWG, DXF ve DGN dosyaları için kullanılır.
  • EmailConfig: EML, EMLX ve MSG dosyaları için kullanılır.
  • EpubConfig: EPUB dosyaları için kullanılır.
  • ExcelConfig: Excel ve CSV dosyaları için kullanılır.
  • MhtConfig: MHT dosyaları için kullanılır.
  • PptConfig: PowerPoint dosyaları için kullanılır.
  • ProjectConfig: MPP dosyaları için kullanılır.
  • PsdConfig: PSD dosyaları için kullanılır.
  • TxtConfig: TXT dosyaları için kullanılır.
  • TiffConfig: TIFF dosyaları için kullanılır.
Example usage
var config = new CadConfig { DefaultRender = false }; // or true

Word Belgelerinde Özel Yazı Tipleri

WordConfig sınıfındaki FontFolders özelliği, uygulamanın yazı tiplerini arayacağı özel dizinleri belirtir.

Usage
var config = new WordConfig
{
    FontFolders = new string[] { "C:\\CustomFonts", "D:\\SharedFonts" }
};

NuGet Paketindeki AjaxControlToolkit Güncellemesi

Uyumluluğu artırmak için NuGet paketimizde değişiklikler yaptık. AjaxControlToolkit artık dahil edilmeyecek. Kullanıcıların projelerine AjaxControlToolkit sürüm 4.1.50508'i manuel olarak kurmaları önerilir.

Doconut 25.2.0 için Önemli Güncelleme

Tüm projelerinizde System.Text.Json paketini 8.0.5 sürümüne güncellemek gereklidir.

E-posta Kodlaması

EmailConfig sınıfındaki EmailEncoding özelliği, e-postanın konu ve gövdesi için tercih edilen kodlamayı belirtir.

Usage
var emailConfig = new EmailConfig {
    EmailEncoding = Encoding.UTF8 // Set preferred email encoding
};

Konu ve Gövde Kodlaması

EmailConfig sınıfındaki SubjectEncoding ve BodyEncoding özellikleri, sırasıyla bir e-postanın konu ve gövdesi için kullanılan kodlamayı tanımlar.

Usage
var emailConfig = new EmailConfig {
    SubjectEncoding = Encoding.UTF8, // Set encoding for the subject
    BodyEncoding = Encoding.UTF8     // Set encoding for the body
};

Word Görüntüleyici Kültür Desteği

WordConfig sınıfındaki DocumentCulture özelliği, DOC ve DOCX dosyaları için kültürü açıkça tanımlamanıza olanak tanır. Bu, tarih, para birimi ve sayı gibi yerelleştirilmiş içeriğin Microsoft Word'de olduğu gibi tam olarak görüntülenmesini sağlar. Özellikle belirli biçimlendirme gereksinimlerine sahip diller için faydalıdır.

Usage
var config = new WordConfig { DocumentCulture = "he-IL" }; // Hebrew (Israel)
var config = new WordConfig { DocumentCulture = "ar-SA" }; // Arabic (Saudi Arabia)
var config = new WordConfig { DocumentCulture = "th-TH" }; // Thai (Thailand)
var config = new WordConfig { DocumentCulture = "ja-JP" }; // Japanese (Japan)