Test dans un environnement réel
Test en production sans filigrane.
Fonctionne partout où vous en avez besoin.
Dans le paysage moderne du développement de logiciels, la création et le déploiement d'applications distribuées peuvent s'avérer complexes et difficiles. La gestion de multiples services, dépendances et environnements de déploiement nécessite souvent des efforts et une coordination importants. Pour relever ces défis, Microsoft a introduitProjet Tyeun outil de développement conçu pour simplifier le développement, le test et le déploiement d'applications .NET. Dans cet article, nous allons nous plonger dans le monde de Tye, en explorant ses caractéristiques, ses avantages et ses applications pratiques pour les développeurs .NET. Nous apprendrons égalementIronPDF, une bibliothèque de génération de PDF deIron Softwareet utilisationTye etIronPDF dans un exemple concret.
Tye est un outil de développement expérimental à code source ouvert qui rationalise le processus de création, de test et de déploiement des applications de projets .NET avec une configuration minimale. Développé par l'équipe d'ingénieurs de Microsoft,Tye vise à simplifier le flux de développement en fournissant une approche cohérente et fondée sur l'opinion pour gérer les microservices et leurs dépendances. A la base, Tye adopte les principes de la conteneurisation, de l'orchestration et de la productivité des développeurs pour permettre le développement et le déploiement d'applications en toute transparence.
Tye détecte et gère automatiquement les dépendances entre les services au sein d'une application .NET. Il exploite les métadonnées du projet et les conteneurs Docker pour déduire les relations entre les services, ce qui facilite la coordination de la communication et de l'orchestration entre les microservices. Cela facilite le développement de microservices avec plusieurs projets.
Tye s'intègre parfaitement à Visual Studio et Visual Studio Code, offrant ainsi un environnement de développement familier aux développeurs .NET. Il offre des outils de débogage, de journalisation et de surveillance des composants d'application, ce qui permet une itération et un dépannage rapides pendant le développement.
Tye adopte les conteneurs Docker comme unité de déploiement pour les applications .NET. Il génère automatiquement des fichiers Docker pour chaque service en fonction des configurations du projet, ce qui facilite la création de conteneurs cohérents et reproductibles dans les environnements de développement et de production, facilitant ainsi les tests et le déploiement de microservices.
Tye simplifie le développement local en orchestrant les dépendances et les services dans un environnement unique. Les développeurs peuvent lancer l'ensemble de la pile d'applications à l'aide d'une seule commande, ce qui élimine la nécessité d'une installation et d'une configuration manuelles des dépendances.
Tye fournit une prise en charge intégrée pour le déploiement d'applications .NET vers des clusters Kubernetes. Il génère des manifestes Kubernetes et des cartes Helm en fonction des spécifications du projet, rationalisant ainsi le processus de déploiement et promouvant les meilleures pratiques pour l'orchestration de conteneurs dans les environnements cloud-native.
Tye s'intègre avec des outils d'observabilité populaires tels que Prometheus et Grafana pour fournir des informations sur la performance et la santé des applications. Il expose les mesures et les journaux des composants de l'application, ce qui permet aux développeurs de surveiller l'utilisation des ressources, d'identifier les goulets d'étranglement et de diagnostiquer les problèmes en temps réel.
Explorons quelques scénarios pratiques dans lesquels Tye peut rationaliser le développement et le déploiement d'applications .NET :
# Start Tye in local development mode with tye run command
tye run
# Start Tye in local development mode with tye run command
tye run
IRON VB CONVERTER ERROR developers@ironsoftware.com
Build Docker images for Tye services with available solution file
tye build
Build Docker images for Tye services with available solution file
tye build
IRON VB CONVERTER ERROR developers@ironsoftware.com
Deploy Tye application to Kubernetes cluster
tye deploy --interactive // deploy microservices and distributed applications
Deploy Tye application to Kubernetes cluster
tye deploy --interactive // deploy microservices and distributed applications
IRON VB CONVERTER ERROR developers@ironsoftware.com
Pour commencer avec Tye :
Installer .NET Core 3.1(non pris en charge pour la version supérieure) sur votre machine.
dotnet tool install -g Microsoft.Tye --version "0.2.0-alpha.20258.3"
dotnet tool install -g Microsoft.Tye --version "0.2.0-alpha.20258.3"
IRON VB CONVERTER ERROR developers@ironsoftware.com
Créez un nouveau dossier pour vos microservices.
mkdir microservices
cd microservices
dotnet new razor -n frontend // frontend service or backend service
mkdir microservices
cd microservices
dotnet new razor -n frontend // frontend service or backend service
IRON VB CONVERTER ERROR developers@ironsoftware.com
tye run frontend // frontend project or backend project
tye run frontend // frontend project or backend project
IRON VB CONVERTER ERROR developers@ironsoftware.com
Cela permet de construire, d'exécuter et de surveiller l'application frontale. Vous pouvez accéder au tableau de bord Tye à l'adresse http://localhost:8000 pour visualiser l'état de vos services
Tye dispose d'un fichier de configuration optionnel, tye.yaml, qui permet de personnaliser les paramètres. Ce fichier YAML contient tous vos projets et dépendances externes. Si vous disposez d'une solution existante, Tye l'alimentera automatiquement avec tous vos projets en cours.
Pour initialiser ce fichier YAML, naviguez jusqu'au répertoire des microservices et exécutez la commande suivante pour générer un fichier tye.yaml par défaut :
tye init
tye init
IRON VB CONVERTER ERROR developers@ironsoftware.com
Un fichier tye.yaml est créé comme indiqué ci-dessous
name: myawesomeapplication
services:
- name: backendtest
project: backend/backend.csproj
bindings:
- port: 7000
- name: frontendtest
project: frontend/frontend.csproj
replicas: 2
bindings:
- port: 8000
- name: workertest
project: worker/worker.csproj
- name: rabbit
image: rabbitmq:3-management
bindings:
- port: 5672
protocol: rabbitmq
Flux de développement simplifié : Tye simplifie le processus de développement en fournissant un ensemble d'outils unifiés pour créer, tester et déboguer des applications .NET localement.
Accélération de la mise sur le marché : En automatisant des tâches courantes telles que la découverte de services, la gestion des dépendances et la conteneurisation, Tye réduit le temps et les efforts nécessaires pour déployer des applications dans des environnements de production.
Amélioration de la collaboration : Tye favorise la collaboration entre les équipes de développement, d'exploitation et de DevOps en fournissant une plateforme commune pour gérer les dépendances des applications et les configurations de déploiement.
La préparation au Cloud-Native : Tye dote les applications .NET des outils et pratiques nécessaires pour s'exécuter dans des environnements cloud-native, tels que Kubernetes, permettant aux organisations d'adopter des paradigmes d'infrastructure modernes en toute confiance.
Le projet Tye est livré avecLicence MIT dont l'utilisation est gratuite à des fins de développement et à des fins commerciales.
IronPDF est une puissante bibliothèque C# conçue pour créer, modifier et signer des PDF à partir de HTML, CSS, images et JavaScript. Il offre des performances de niveau commercial avec une faible empreinte mémoire.
Convertissez des fichiers HTML, des chaînes HTML et des URL en PDF. Par exemple, rendre une page web sous forme de PDF à l'aide du moteur de rendu PDF de Chrome.
Compatible avec diverses plateformes .NET, notamment .NET Core, .NET Standard et .NET Framework. Il est compatible avec Windows, Linux et macOS.
Définissez des propriétés, renforcez la sécurité à l'aide de mots de passe et d'autorisations, et appliquez des signatures numériques à vos PDF.
Personnalisez les PDF avec des en-têtes, des pieds de page, des numéros de page et des marges réglables. Prend en charge les mises en page réactives et les formats de papier personnalisés.
Respecter les normes PDF telles que PDF/A et PDF/UA. Prend en charge le codage des caractères UTF-8 et gère les ressources telles que les images, les feuilles de style CSS et les polices.
Voyons maintenant un exemple pratique avec ces deux bibliothèques.
Tout d'abord, créons une application Visual Studio Razor. Ouvrez Visual Studio, créez un nouveau projet et sélectionnez l'application razor comme indiqué ci-dessous.
Indiquer le nom et la localisation du projet.
À l'étape suivante, sélectionnez la version de .NET Framework et cliquez sur Créer. Étant donné que Tye ne travaille que sur .NET 3.1, nous choisirons la même version.
InstallerIronPDF à partir du package NuGet de Visual Studio Package Manager.
Ensuite, ouvrez l'Explorateur de fichiers et naviguez jusqu'au dossier de la solution. Ouvrez ensuite l'invite CMD.
Installez Tye à l'aide de la commande suivante :
dotnet tool install -g Microsoft.Tye --version "0.11.0-alpha.22111.1"
dotnet tool install -g Microsoft.Tye --version "0.11.0-alpha.22111.1"
IRON VB CONVERTER ERROR developers@ironsoftware.com
OU si vous avez déjà installé Tye et que vous souhaitez le mettre à jour, utilisez la commande ci-dessous :
dotnet tool update -g Microsoft.Tye --version "0.11.0-alpha.22111.1"
dotnet tool update -g Microsoft.Tye --version "0.11.0-alpha.22111.1"
IRON VB CONVERTER ERROR developers@ironsoftware.com
Initialisez Tye à l'aide de la commande suivante :
tye init
tye init
IRON VB CONVERTER ERROR developers@ironsoftware.com
Cela créera un fichier YAML modèle comme ci-dessous :
# tye application configuration file
# read all about it at https://github.com/dotnet/tye
#
# when you've given us a try, we'd love to know what you think:
# https://aka.ms/AA7q20u
#
# define global settings here
# name: exampleapp # application name
# registry: exampleuser # dockerhub username or container registry hostname
# define multiple services here
services:
- name: frontend
project: Frontend\Frontend.csproj # msbuild project path (relative to this file)
# executable: app.exe # path to an executable (relative to this file)
args: -f=netcoreapp3.1 # arguments to pass to the process
# replicas: 5 # number of times to launch the application
# env: # array of environment variables
# - name: key
# value: value
# bindings: # optional array of bindings (ports, connection strings)
# - port: 8080 # number port of the binding
Exécutez Tye à l'aide de la commande suivante :
tye run frontend
tye run frontend
IRON VB CONVERTER ERROR developers@ironsoftware.com
Cela ouvrira le tableau de bord Tye à l'URL : http://127.0.0.1:8000/
pour voir l'application en cours d'exécution.
Ensuite, ajoutez le code ci-dessous au projet pour générer un document PDF à partir de n'importe quelle URL de site web en cliquant sur un bouton.
Ajoutez le code ci-dessous au fichier Index.cshtml :
@page
@model IndexModel
@{
ViewData["Title"] = "Generate PDF";
}
<form method="post" class="text-center flex-row">
<h1 class="display-4">Welcome To Url To PDF Generator </h1>
<p>Enter Website Url:
<button type="submit">Generate PDF</button>
@if (Model.Message != null)
{
<p>@Model.Message</p>
}
</form>
@page
@model IndexModel
@{
ViewData["Title"] = "Generate PDF";
}
<form method="post" class="text-center flex-row">
<h1 class="display-4">Welcome To Url To PDF Generator </h1>
<p>Enter Website Url:
<button type="submit">Generate PDF</button>
@if (Model.Message != null)
{
<p>@Model.Message</p>
}
</form>
IRON VB CONVERTER ERROR developers@ironsoftware.com
Ajoutez ensuite le code ci-dessous à Index.cshtml.cs :
using IronPdf;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.Logging;
namespace Frontend.Pages
{
public class IndexModel : PageModel
{
public string Message { get; set; }
[BindProperty]
public string UrlInput { get; set; }
private readonly ILogger<IndexModel> _logger;
public IndexModel(ILogger<IndexModel> logger)
{
_logger = logger;
}
public void OnGet()
{
}
public IActionResult OnPost()
{
if (string.IsNullOrEmpty(UrlInput))
{
ModelState.AddModelError("UrlInput", "Please enter some text.");
return Page();
}
// Create PDF from ChromePdfRenderer
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf(UrlInput);
// Return the PDF as a file result
var pdfBytes = pdf.BinaryData;
return File(pdfBytes, "application/pdf", "GeneratedDocument.pdf");
}
}
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.Logging;
namespace Frontend.Pages
{
public class IndexModel : PageModel
{
public string Message { get; set; }
[BindProperty]
public string UrlInput { get; set; }
private readonly ILogger<IndexModel> _logger;
public IndexModel(ILogger<IndexModel> logger)
{
_logger = logger;
}
public void OnGet()
{
}
public IActionResult OnPost()
{
if (string.IsNullOrEmpty(UrlInput))
{
ModelState.AddModelError("UrlInput", "Please enter some text.");
return Page();
}
// Create PDF from ChromePdfRenderer
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf(UrlInput);
// Return the PDF as a file result
var pdfBytes = pdf.BinaryData;
return File(pdfBytes, "application/pdf", "GeneratedDocument.pdf");
}
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
Exécutez maintenant Tye comme suit :
Ceci lancera le tableau de bord Tye.
Cliquez maintenant sur l'un des liens de la section "bindings" pour ouvrir l'application "PDF generator" et saisissez un exemple d'URL pour la génération de PDF.
Cliquez sur le bouton "générer" pour obtenir le PDF suivant :
Explication du code
Index.cshtml contient le bouton et l'entrée pour prendre l'URL du site web et déclencher la génération du PDF.
Index.cshtml.cs contient le code nécessaire pour générer le document PDF à l'aide d'IronPDF.
Nous utilisons la classe ChromePdfRenderer et RenderUrlAsPdf() la méthode pour générer le PDF à partir de l'URL.
L'URL générée est renvoyée en tant que réponse à la méthode Post.
La commande Tye Run lancera le tableau de bord Tye où vous pourrez voir tous les services en cours d'exécution.
VisiterLicences d'IronPDF page.
Placez la clé de licence dans le fichier appSettings.json comme indiqué ci-dessous :
{
"IronPdf.License.LicenseKey" : "The Key Here"
}
En conclusion,Tye représente une avancée significative dans l'écosystème .NET, offrant une approche rationalisée de la construction, du test et du déploiement d'applications distribuées. Que vous soyez un développeur .NET chevronné ou que vous découvriez la conteneurisation et les microservices, Tye fournit une plateforme conviviale pour adopter des pratiques de développement modernes et accélérer votre parcours vers une architecture cloud-native.
IronPDF est une bibliothèque .NET qui permet aux développeurs de créer, de manipuler et de rendre facilement des documents PDF à partir de contenu HTML. Il permet de convertir des fichiers HTML en PDF, de fusionner et de diviser des PDF et d'ajouter des en-têtes, des pieds de page et des filigranes. IronPDF est réputé pour sa facilité d'utilisation, son rendu de haute qualité et sa compatibilité avec les applications .NET Core et .NET Framework. Connaître à la fois leIronPDF la bibliothèque et leTye les développeurs peuvent acquérir des compétences avancées pour développer des applications modernes avec des capacités de génération de PDF.
10 produits API .NET pour vos documents de bureau