Configuración en .NET Framework
Configuración de Web.config
Registre el HttpHandler en su archivo web.config.
<httpHandlers>
<add verb="GET,POST" path="DocImage.axd" type="Doconut.DocImageHandler, Doconut" />
</httpHandlers><handlers>
<add name="DocImage" verb="GET,POST" path="DocImage.axd" type="Doconut.DocImageHandler, Doconut" />
</handlers>Agregar licencias
Doconut detecta automáticamente licencias en la carpeta raíz, o puede agregarlas manualmente.
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.
<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 - 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
Opciones de configuración de renderizado
Puede configurar el comportamiento de renderizado usando las siguientes opciones:
- CadConfig: Se utiliza para archivos DWG, DXF y DGN.
- EmailConfig: Se utiliza para archivos EML, EMLX y MSG.
- EpubConfig: Se utiliza para archivos EPUB.
- ExcelConfig: Se utiliza para archivos Excel y CSV.
- MhtConfig: Se utiliza para archivos MHT.
- PptConfig: Se utiliza para archivos PowerPoint.
- ProjectConfig: Se utiliza para archivos MPP.
- PsdConfig: Se utiliza para archivos PSD.
- TxtConfig: Se utiliza para archivos TXT.
- TiffConfig: Se utiliza para archivos TIFF.
var config = new CadConfig { DefaultRender = false }; // or trueFuentes personalizadas en documentos Word
La propiedad FontFolders en la clase WordConfig especifica directorios personalizados donde la aplicación buscará fuentes.
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 AjaxControlToolkit versión 4.1.50508 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.
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.
var emailConfig = new EmailConfig {
SubjectEncoding = Encoding.UTF8, // Set encoding for the subject
BodyEncoding = Encoding.UTF8 // Set encoding for the body
};Compatibilidad de cultura en el visor de Word
La propiedad DocumentCulture en la clase WordConfig le permite definir explícitamente la cultura para archivos DOC y DOCX. Esto garantiza que el contenido localizado —como fechas, monedas y números— se muestre exactamente como lo hace en Microsoft Word. Es particularmente útil para idiomas con requisitos de formato específicos.
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)