Configuración en .NET Framework

Configuración de Web.config

Registre el HttpHandler en su archivo web.config.

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>

Agregar Licencias

Doconut detecta automáticamente las licencias en la carpeta raíz, o puede agregarlas manualmente.

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

Configuración para web.config

Las siguientes entradas de configuración son necesarias para el archivo web.config para garantizar la compatibilidad con Doconut y .NET Framework.

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>

Paquetes NuGet requeridos

Para garantizar que su proyecto sea totalmente compatible con Doconut y .NET Framework, se deben incluir los siguientes paquetes NuGet:

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

Opciones de configuración de renderizado

Puede configurar el comportamiento de renderizado utilizando las siguientes opciones:

  • CadConfig: Utilizado para archivos DWG, DXF y DGN.
  • EmailConfig: Utilizado para archivos EML, EMLX y MSG.
  • EpubConfig: Utilizado para archivos EPUB.
  • ExcelConfig: Utilizado para archivos Excel y CSV.
  • MhtConfig: Utilizado para archivos MHT.
  • PptConfig: Utilizado para archivos PowerPoint.
  • ProjectConfig: Utilizado para archivos MPP.
  • PsdConfig: Utilizado para archivos PSD.
  • TxtConfig: Utilizado para archivos TXT.
  • TiffConfig: Utilizado para archivos TIFF.
Example usage
var config = new CadConfig { DefaultRender = false }; // or true

Fuentes personalizadas en documentos de Word

La propiedad FontFolders en la clase WordConfig especifica directorios personalizados donde la aplicación buscará fuentes.

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

Actualización sobre AjaxControlToolkit en el paquete NuGet

Hemos realizado cambios en nuestro paquete NuGet para mejorar la compatibilidad. AjaxControlToolkit ya no se incluirá. Se recomienda a los usuarios instalar manualmente la versión 4.1.50508 de AjaxControlToolkit en sus proyectos.

Actualización importante para Doconut 25.2.0

Es esencial actualizar el paquete System.Text.Json a la versión 8.0.5 en todos sus proyectos.

Codificación de correo electrónico

La propiedad EmailEncoding en la clase EmailConfig especifica la codificación preferida tanto para el asunto como para el cuerpo del correo electrónico.

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

Codificación de asunto y cuerpo

Las propiedades SubjectEncoding y BodyEncoding en la clase EmailConfig definen la codificación utilizada para el asunto y el cuerpo de un correo electrónico, respectivamente.

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