using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Dottrace .NET Core (Comment ça marche pour les développeurs)
Jordi Bardia
juillet 1, 2024
Partager:
Voici Dottrace .NET Core, un outil puissant dans l'écosystème .NET qui sert d'outil .NET essentiel pour le profilage des performances. En tant que profileur de performance `.NET', l'outil .NET trace permet aux développeurs de capturer des fichiers de trace détaillés qui donnent un aperçu des événements d'exécution d'un processus en cours d'exécution. Cet outil est indispensable pour optimiser les applications construites sur le Framework .NET.
Que vous effectuiez des tests unitaires ou que vous intégriez des builds d'intégration continue, Dottrace vous permet de surveiller et d'analyser efficacement les performances de vos applications. Grâce à cet outil, vous pouvez mieux comprendre le comportement de votre application, ce qui garantit des performances et une fiabilité optimales.
ironPDF est une bibliothèque complète pour travailler avec des PDF dans des applications .NET. Il permet de créer, de modifier et d'extraire le contenu des fichiers PDF. IronPDF prend en charge des fonctions telles que la conversion de HTML en PDF, la fusion et le fractionnement de PDF. Cette bibliothèque est un outil précieux pour toute application qui doit générer ou manipuler des documents PDF. Cet article utilisera cette bibliothèque en conjonction avec Dottrace pour présenter une application réelle de l'efficacité de Dottrace et d'IronPDF.
Démarrer avec Dottrace .NET Core
Configuration de Dottrace .NET Core dans les projets .NET
Tout d'abord, vous devez installer Dottrace .NET Core à l'aide de NuGet. Ouvrez Visual Studio et suivez les étapes suivantes :
Ouvrez Visual Studio.
Sélectionnez Créer un nouveau projet.
Choisissez Application console(.NET Core) et cliquez sur Suivant.
Nommez votre projet DottraceExample et cliquez sur Create.
Dans Solution Explorer, faites un clic droit sur le projet et sélectionnez Manage NuGet Packages.
Dans le gestionnaire de paquets NuGet, recherchez JetBrains.dotTrace.CommandLineTools.
Sélectionnez le paquet et cliquez sur Installer.
Ceci installe Dottrace comme une dépendance dans votre projet.
Profilage d'une application console simple
Créons une application console de base pour établir un profil. Remplaçons le code dans Program.cs par ce qui suit :
using System;
using System.Threading;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Starting application...");
Thread.Sleep(5000); // Simulating a time-consuming operation
Console.WriteLine("Application finished.");
}
}
using System;
using System.Threading;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Starting application...");
Thread.Sleep(5000); // Simulating a time-consuming operation
Console.WriteLine("Application finished.");
}
}
Imports System
Imports System.Threading
Friend Class Program
Shared Sub Main(ByVal args() As String)
Console.WriteLine("Starting application...")
Thread.Sleep(5000) ' Simulating a time-consuming operation
Console.WriteLine("Application finished.")
End Sub
End Class
Créez et exécutez votre application en appuyant sur F5. Une fois que l'application est en cours d'exécution, vous aurez besoin de son identifiant de processus pour établir le profil. Vous pouvez trouver l'ID du processus en utilisant la fenêtre Outils de diagnostic de Visual Studio ou en consultant le Gestionnaire de tâches.
Pour profiler votre application à l'aide de Dottrace, ouvrez une fenêtre de terminal ou la console du gestionnaire de paquets dans Visual Studio et exécutez :
Remplacez <votre-id-process> par l'ID du processus de votre application en cours d'exécution.
Une fois votre application terminée, vous aurez un fichier trace.nettrace. Ce fichier contient toutes les données de profilage collectées pendant l'exécution de l'application. Vous pouvez analyser ce fichier dans Visual Studio. Procédez comme suit :
Ouvrez Visual Studio.
Allez dans Fichier > Ouvrir > Fichier.
Sélectionnez le fichier trace.nettrace et cliquez sur Ouvrir.
Visual Studio affiche des données détaillées sur les performances, ce qui vous permet d'identifier et de corriger les goulets d'étranglement.
Maintenant que vous avez configuré Dottrace et créé un exemple de profilage de base, vous pouvez passer à la mise en œuvre de fonctionnalités plus avancées.
Caractéristiques de la mise en œuvre de Dottrace .NET Core
Analyse de l'utilisation de l'unité centrale
L'une des principales fonctionnalités de Dottrace .NET Core est l'analyse de l'utilisation du processeur. Cela vous aide à identifier les parties de votre code qui consomment le plus de ressources CPU. Voici comment procéder :
Tout d'abord, démarrez votre application dans Visual Studio. Ensuite, dans le terminal ou Package Manager Console, exécutez :
Remplacez <votre-process-id> par l'identifiant du processus de votre application. Une fois la session de profilage terminée, ouvrez le fichier cpu_usage.nettrace dans Visual Studio :
using System;
using System.Diagnostics;
class Program
{
static void Main(string[] args)
{
var sw = new Stopwatch();
sw.Start();
// Simulate a CPU-intensive operation
for (int i = 0; i < 1000000000; i++) { }
sw.Stop();
Console.WriteLine($"Elapsed Time: {sw.ElapsedMilliseconds} ms");
}
}
using System;
using System.Diagnostics;
class Program
{
static void Main(string[] args)
{
var sw = new Stopwatch();
sw.Start();
// Simulate a CPU-intensive operation
for (int i = 0; i < 1000000000; i++) { }
sw.Stop();
Console.WriteLine($"Elapsed Time: {sw.ElapsedMilliseconds} ms");
}
}
Imports System
Imports System.Diagnostics
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim sw = New Stopwatch()
sw.Start()
' Simulate a CPU-intensive operation
For i As Integer = 0 To 999999999
Next i
sw.Stop()
Console.WriteLine($"Elapsed Time: {sw.ElapsedMilliseconds} ms")
End Sub
End Class
Ce code simule une opération gourmande en ressources humaines. Lorsque vous analysez le fichier cpu_usage.nettrace, vous verrez que la boucle prend une quantité significative de temps CPU.
Contrôle de l'allocation de mémoire
Dottrace .NET Core peut également vous aider à surveiller l'allocation de la mémoire dans votre application. Ceci est crucial pour identifier les fuites de mémoire et optimiser l'utilisation de la mémoire.
Exécutez votre application et recueillez les données relatives à l'allocation de mémoire :
Après la session, ouvrez le fichier memory_allocation.nettrace dans Visual Studio :
using System;
class Program
{
static void Main(string[] args)
{
for (int i = 0; i < 10000; i++)
{
var data = new byte[1024]; // Allocate 1KB
}
Console.WriteLine("Memory allocation completed.");
}
}
using System;
class Program
{
static void Main(string[] args)
{
for (int i = 0; i < 10000; i++)
{
var data = new byte[1024]; // Allocate 1KB
}
Console.WriteLine("Memory allocation completed.");
}
}
Imports System
Friend Class Program
Shared Sub Main(ByVal args() As String)
For i As Integer = 0 To 9999
Dim data = New Byte(1023){} ' Allocate 1KB
Next i
Console.WriteLine("Memory allocation completed.")
End Sub
End Class
Ce code alloue de la mémoire dans une boucle. L'analyse du fichier memory_allocation.nettrace montrera combien de mémoire est allouée et où cela se produit dans votre code.
Profilage des opérations d'E/S
Le profilage des opérations d'E/S est une autre caractéristique essentielle. Il vous aide à comprendre l'impact de la lecture et de l'écriture sur les performances des fichiers.
Lancez votre application et collectez les données d'E/S :
Ouvrez le fichier io_operations.nettrace dans Visual Studio pour l'analyser :
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
var filePath = "test.txt";
// Write to file
using (var writer = new StreamWriter(filePath))
{
for (int i = 0; i < 1000; i++)
{
writer.WriteLine("This is a test line.");
}
}
// Read from file
using (var reader = new StreamReader(filePath))
{
while (reader.ReadLine() != null) { }
}
Console.WriteLine("I/O operations completed.");
}
}
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
var filePath = "test.txt";
// Write to file
using (var writer = new StreamWriter(filePath))
{
for (int i = 0; i < 1000; i++)
{
writer.WriteLine("This is a test line.");
}
}
// Read from file
using (var reader = new StreamReader(filePath))
{
while (reader.ReadLine() != null) { }
}
Console.WriteLine("I/O operations completed.");
}
}
Imports System
Imports System.IO
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim filePath = "test.txt"
' Write to file
Using writer = New StreamWriter(filePath)
For i As Integer = 0 To 999
writer.WriteLine("This is a test line.")
Next i
End Using
' Read from file
Using reader = New StreamReader(filePath)
Do While reader.ReadLine() IsNot Nothing
Loop
End Using
Console.WriteLine("I/O operations completed.")
End Sub
End Class
Ce code écrit et lit dans un fichier. L'analyse du fichier io_operations.nettrace révèlera le temps passé sur les opérations d'entrées-sorties.
Identifier les goulets d'étranglement en matière de performances
L'identification des goulets d'étranglement est l'un des principaux objectifs de l'utilisation de Dottrace. En analysant les fichiers de trace collectés, vous pouvez identifier les parties les plus lentes de votre code.
Démarrez votre application et collectez les données de performance :
Ouvrez le fichier performance_bottlenecks.nettrace dans Visual Studio :
using System;
using System.Threading;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Starting application...");
// Simulate a time-consuming operation
Thread.Sleep(5000);
Console.WriteLine("Application finished.");
}
}
using System;
using System.Threading;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Starting application...");
// Simulate a time-consuming operation
Thread.Sleep(5000);
Console.WriteLine("Application finished.");
}
}
Imports System
Imports System.Threading
Friend Class Program
Shared Sub Main(ByVal args() As String)
Console.WriteLine("Starting application...")
' Simulate a time-consuming operation
Thread.Sleep(5000)
Console.WriteLine("Application finished.")
End Sub
End Class
Ce code simule un retard dans l'application. L'analyse du fichier performance_bottlenecks.nettrace montrera où l'on passe le plus de temps, ce qui vous aidera à optimiser ces parties.
Ces exemples couvrent les principales fonctionnalités de Dottrace .NET Core. Vous pouvez désormais analyser l'utilisation du processeur, surveiller l'allocation de la mémoire, établir le profil des opérations d'E/S, identifier les goulets d'étranglement en matière de performances et établir le profil dans les environnements de production. Chaque fonctionnalité vous permet d'optimiser et d'améliorer vos applications .NET Core.
Intégration de Dottrace à IronPDF
Introduction à IronPDF
ironPDF est une puissante bibliothèque .NET qui vous permet de générer, d'éditer et de gérer facilement des fichiers PDF dans vos applications C#. Que vous ayez besoin de créer de nouveaux PDF à partir de zéro, de convertir du HTML en PDF ou de manipuler des PDF existants, IronPDF offre un ensemble riche de fonctionnalités permettant d'accomplir ces tâches efficacement. Il est avantageux pour les applications qui nécessitent la génération et le traitement de PDF, telles que les systèmes de reporting, les solutions de gestion de documents et les applications web.
Cas d'utilisation de la fusion d'IronPDF avec Dottrace
Prenons le cas d'une application web qui génère des rapports PDF pour les utilisateurs. En utilisant Dottrace, vous pouvez suivre les performances du processus de génération de PDF, identifier les problèmes de performance à l'aide du fichier de trace et apporter des améliorations pour améliorer l'expérience de l'utilisateur. Cette intégration est particulièrement précieuse pour les applications qui traitent de gros volumes de documents PDF ou qui nécessitent un traitement très performant.
Exemple de code pour un cas d'utilisation
Vous trouverez ci-dessous un exemple de code complet qui démontre comment intégrer IronPDF avec Dottrace. Cet exemple crée une conversion simple de HTML en PDF et utilise Dottrace pour surveiller les performances de l'opération.
using System;
using IronPdf;
using Microsoft.Diagnostics.Tracing;
using Microsoft.Diagnostics.Tracing.Session;
class Program
{
static void Main(string[] args)
{
// Start tracing session
using (var session = new TraceEventSession("MySession"))
{
session.EnableProvider("Microsoft-Windows-DotNETRuntime");
// Perform PDF generation
var pdfDocument = GeneratePdf("Hello, world!");
// Save the PDF to a file
pdfDocument.SaveAs("example.pdf");
// Stop tracing session
session.Stop();
}
Console.WriteLine("PDF generated and performance traced successfully.");
}
static PdfDocument GeneratePdf(string htmlContent)
{
// Create an instance of the HtmlToPdf renderer
var renderer = new ChromePdfRenderer();
// Convert HTML to PDF
var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
return pdfDocument;
}
}
using System;
using IronPdf;
using Microsoft.Diagnostics.Tracing;
using Microsoft.Diagnostics.Tracing.Session;
class Program
{
static void Main(string[] args)
{
// Start tracing session
using (var session = new TraceEventSession("MySession"))
{
session.EnableProvider("Microsoft-Windows-DotNETRuntime");
// Perform PDF generation
var pdfDocument = GeneratePdf("Hello, world!");
// Save the PDF to a file
pdfDocument.SaveAs("example.pdf");
// Stop tracing session
session.Stop();
}
Console.WriteLine("PDF generated and performance traced successfully.");
}
static PdfDocument GeneratePdf(string htmlContent)
{
// Create an instance of the HtmlToPdf renderer
var renderer = new ChromePdfRenderer();
// Convert HTML to PDF
var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
return pdfDocument;
}
}
Imports System
Imports IronPdf
Imports Microsoft.Diagnostics.Tracing
Imports Microsoft.Diagnostics.Tracing.Session
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Start tracing session
Using session = New TraceEventSession("MySession")
session.EnableProvider("Microsoft-Windows-DotNETRuntime")
' Perform PDF generation
Dim pdfDocument = GeneratePdf("Hello, world!")
' Save the PDF to a file
pdfDocument.SaveAs("example.pdf")
' Stop tracing session
session.Stop()
End Using
Console.WriteLine("PDF generated and performance traced successfully.")
End Sub
Private Shared Function GeneratePdf(ByVal htmlContent As String) As PdfDocument
' Create an instance of the HtmlToPdf renderer
Dim renderer = New ChromePdfRenderer()
' Convert HTML to PDF
Dim pdfDocument = renderer.RenderHtmlAsPdf(htmlContent)
Return pdfDocument
End Function
End Class
Dans cet exemple, nous commençons par créer une TraceEventSession pour capturer les données de performance à l'aide de Dottrace. Nous générons ensuite un PDF à partir d'une simple chaîne HTML à l'aide d'IronPDF. Après avoir enregistré le PDF, nous arrêtons la session de traçage.
Cela nous permet de surveiller les performances du processus de génération de PDF et de recueillir des informations précieuses sur son exécution.
Conclusion
Explorer leOptions de licence d'IronPDF pour en savoir plus sur les licences disponibles et leurs prix respectifs, veuillez consulter la page de l'éditeur.
En intégrant Dottrace à IronPDF, vous pouvez améliorer de manière significative la performance et la fiabilité de vos processus de génération de PDF. Cette intégration fournit des informations précieuses sur la manière dont votre application gère les tâches PDF, ce qui vous permet d'optimiser les opérations et de garantir une expérience utilisateur fluide. IronPDF offre un ensemble complet de fonctionnalités pour travailler avec les PDF, ce qui en fait un outil essentiel pour tout développeur .NET.
IronPDF propose un essai gratuit, et les licences commencent à partir de $749, vous permettant d'évaluer ses capacités avant de faire un achat. La combinaison de la puissance de Dottrace et d'IronPDF peut vous aider à créer des applications performantes et efficaces qui répondent aux besoins de vos utilisateurs.
Jordi maîtrise parfaitement Python, C# et C++. Lorsqu'il ne met pas à profit ses compétences chez Iron Software, il se consacre à la programmation de jeux. Partageant des responsabilités en matière de tests de produits, de développement de produits et de recherche, Jordi apporte une valeur ajoutée considérable à l'amélioration continue des produits. Cette expérience variée le stimule et l'engage, et il dit que c'est l'un des aspects qu'il préfère dans son travail chez Iron Software. Jordi a grandi à Miami, en Floride, et a étudié l'informatique et les statistiques à l'université de Floride.
< PRÉCÉDENT Exemple C# de Supersocket (Comment ça marche pour les développeurs)
SUIVANT > C# (Comment ça marche pour les développeurs)
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucun engagement de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre démo en direct gratuite
Fiable par plus de 2 millions d'ingénieurs dans le monde entier