.NET Aspire (Geliştiriciler İçin Nasıl Çalışır)
.NET Aspire, gözlemlenebilir, üretime hazır, dağıtılmış uygulamalar oluşturmak için tasarlanmış, bulut hazır bir yığın çerçevesi olarak başlı başına durmaktadır. NuGet paketleri seti yoluyla sunulan Aspire, çeşitli cloud-native hizmet keşfi dikkate alır ve tutarlı kurulum desenleri sağlamayı amaçlar. .NET cloud-native uygulamalarında norm, geleneksel tümleşik kod yapısından ayrılarak, dağıtılmış uygulamalarda daha küçük, birbirine bağlı bileşenler veya mikro servisler içerir. Bu uygulamalar tipik olarak veri tabanları, mesajlaşma sistemleri, bulut kaynakları ve önbelleğe alma gibi birçok hizmete dayanır.
Bu bağlamda, dağıtılmış uygulamalar, farklı ev sahipleri üzerinde çalışan konteynerleroları gibi çoklu düğümde yer alan hesaplama kaynaklarını kullanır. Bu düğümlerin, kullanıcıların son isteklerine kolektif olarak yanıt vermek için ağ sınırları boyunca etkili bir iletişime sahip olmaları gereklidir. Özellikle, bulut tabanlı dağıtık bir uygulama, dağıtık uygulamalar içinde belirgin bir kategoridir ve bulut tabanlı uygulama altyapılarında var olan ölçeklenebilirlik, dayanıklılık ve yönetilebilirlikten faydalanır.
Bu makalede .NET Aspire bileşenlerini kullanarak bir web uygulaması oluşturacağız. Ayrıca, PDF dosyalarını oluşturmak ve indirmek için IronPDF kütüphanesi'ni Aspire .NET proje bileşeninde kullanacağız.
1. .NET Aspire'e Giriş
.NET Aspire uygulaması, .NET ekosisteminde .NET cloud-native uygulamaları için geliştirme deneyimini iyileştirmeyi amaçlayan anlamlı bir inisiyatif olarak duruyor. Dağıtılmış uygulamaların sorunsuz bir şekilde oluşturulmasını ve işletilmesini kolaylaştırmak için tasarlanmış toplu ve görüş belirleyen bir dizi araç ve tasarım düzeni sunar. .NET Aspire başlangıç uygulamasının temel hedefleri şunlardır:
- Orkestra: .NET Aspire, multi-proje uygulamaların ve karmaşık bağımlılıklarının orkestrasyonu için sağlam yetenekler sunar. Bu fonksiyonellik, farklı .NET proje bileşenleri arasında sorunsuz yürütme ve bütünlük sağlar.
- Bileşenler: .NET Aspire tarafından sunulan bileşenler, yerel bir Redis konteyner kaynağı veya Postgres gibi yaygın olarak kullanılan hizmetleri temsil eden NuGet paketleri içinde kapsüllenmiştir. Bu bileşenler standartlaştırılmış arayüzlerle karakterize edilir, uygulamanızla tutarlı ve sorunsuz bir entegrasyon sağlar. Prepackaged bileşenlerden faydalanarak, geliştiriciler geliştirme sürecini hızlandırabilir ve .NET Aspire proje şablonlarını kullanarak daha yüksek seviyede birlikte çalışabilirlik ve yapılandırılabilir cloud-native uygulamalar sürdürebilir.
- Araçlar: .NET Aspire başlangıç şablonları, gelişmiş iş akışını düzene sokmak için hazırlanmış kapsamlı bir araç seti içerir. Proje şablonları ve araç deneyimleri, Visual Studio ve .NET CLI'ye düşünceli bir şekilde entegre edilmiştir, geliştiricilere .NET Aspire uygulamaları oluşturma ve bunlarla etkileşim kurma konusunda güç sağlar. Bu kapsayıcı araç çerçevesi, .NET Aspire uygulaması konfigürasyonlarını ve proje şablonlarını geliştirmede ve yönetmede birleşik bir ortam sağlar.
Esasen, .NET Aspire, orkestrasyon, bileşen entegrasyonu ve araçlar gibi özel cloud-native konuların kilit yönlerini ele alan bütüncül bir çözüm olarak hizmet eder, hepsi de .NET cloud-native uygulamalar oluşturmanın ve dağıtmanın verimliliğini ve tutarlılığı artırmayı amaçlamaktadır.
2. .NET Aspire ile Başlarken
.NET Aspire ile etkileşime girmeden önce, aşağıdaki bileşenlerin yerel olarak kurulmuş olduğundan emin olun:
- .NET 8.0: Sistemde .NET 8.0'ın kurulu olduğundan emin olun.
- .NET Aspire İş Yükü: VS yükleyicisini kullanarak veya
dotnet workload install aspirekomutunu çalıştırarak .NET Aspire iş yükünü edinin. - Entegre Geliştirici Ortamı (IDE) veya Kod Düzenleyici: Visual Studio 2022, sistemde önceden yüklenmiş olmalıdır.
Bu gereksinimlerin tümü karşılanıyorsa, uygulamaları ele alan ilk .NET Aspire bileşenlerinizi geliştirebilirsiniz.
3. Yeni bir .NET Aspire Projesi Oluşturun
.NET Aspire uygulamaları oluşturmak için aşağıdaki adımları izleyin.
- Visual Studio'yu açın ve Yeni bir proje oluştur'a tıklayın.
- Yeni bir pencere açılacak. Bu yeni pencerede, arama çubuğuna Aspire yazın. Aşağıda bir liste görünecek, bu listeden Aspire Başlangıç apphost projelerini ve paket referanslarını seçin ve İleri'ye tıklayın.
- Yeni bir pencere açılacaktır. Bu yeni pencerede proje adını yazın ve İleri'yi tıklayın.
- Bu pencerede hedef çerçeveyi seçin ve Oluştur düğmesine tıklayın.
.NET Aspire uygulaması birkaç saniye içinde oluşturulacak ve geliştirme ve özelleştirmeye başlamak için hazır olacaksınız.
4. .NET Aspire uygulamasını Çalıştırma ve Test Etme
Proje oluşturulduktan sonra, sadece Çalıştır düğmesine tıklayın, bir yapı oluşturmak biraz zaman alacak ve ardından Aspire web uygulamamızın Ana sayfa sayfasını açacaktır.
Bu ana sayfa, gözlenebilir üretime hazır .NET Aspire başlangıç uygulamaları oluşturmak için .NET Aspire Bulut-yerel uygulama yığınını içerecek.

Şimdi .NET ile etkileşim kurmak için bağlantılara tıklayın. Şimdilik, .NET Aspire web ön uç projesi ve paket referanslarına tıklayın. Bu, farklı bir port adıyla yeni bir web sayfasını açacaktır.

5. Introducing IronPDF C
IronPDF belgeleri, onu güçlü ve çok yönlü bir C# kütüphanesi olarak tanımlar; geliştiricilerin, uygulamalarına gelişmiş PDF oluşturma ve düzenleme yeteneklerini zahmetsizce entegre etmelerini sağlar. Iron Software tarafından geliştirilen bu özellik açısından zengin kütüphane, C# uygulamaları içinde doğrudan PDF belgeleri oluşturmak, değiştirmek ve render etmek için kapsamlı bir araç seti sunar.
IronPDF ile, geliştiriciler HTML, resimler ve mevcut belgeler gibi çeşitli kaynaklardan PDF oluşturabilir ve biçimlendirme ve düzen üzerinde hassas kontrol sağlayarak PDF'lerin oluşturulması sırasında kesintisiz olarak çalışabilir. Dinamik raporlar oluşturmak, HTML içeriğini PDF'ye dönüştürmek veya mevcut belgelere not eklemek olsun, IronPDF, belge yönetimi ihtiyaçları için güvenilir ve verimli bir çözüm arayan C# geliştiricileri için değerli bir hale getirir.
5.1. IronPDF Kurulumu
IronPDF'yi sorunsuz bir şekilde kurmak için Visual Studio içindeki NuGet Paket Yöneticisini kullanın. Kurulum için belirlenen paket IronPDF olarak adlandırılır. Aşağıdaki komutu Paket Yöneticisi Konsoluna kopyalayıp yapıştırın ve enter tuşuna basın:
Install-Package IronPdf
5.2. IronPDF'yi Aspire Bileşeni ile Entegre Etme
IronPDF'yi Aspire bileşeni ile entegre etmek, Blazor web uygulaması ile entegre etmekle aynıdır çünkü Aspire bileşenleri Blazor uygulamasını bir bileşen olarak kullanabilir. Bu kod örneğinde, bir PDF dosyası oluşturmak ve indirmek için Counter Sayfasının kodunu değiştireceğiz.
counter.razor dosyasını açın ve kodu aşağıdaki kodla değiştirin.
@page "/PrintPDF"
@rendermode InteractiveServer
@using IronPdf
<PageTitle>Print PDF</PageTitle>
<h1>IronPDF</h1>
<p role="status">Click on the button below to create and download the PDF file </p>
<button class="btn btn-primary" @onclick="IncrementCount">Print</button>
@code {
private int currentCount = 0;
/// <summary>
/// Handles the click event of the "Print" button.
/// This function will generate a PDF from an HTML string and prompt the user to download it.
/// </summary>
private void IncrementCount()
{
var renderer = new ChromePdfRenderer();
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file using JavaScript Interop to initiate download
JSRuntime.InvokeVoidAsync("saveAsFile", "output.pdf", Convert.ToBase64String(pdf.Stream.ToArray()));
}
}
@page "/PrintPDF"
@rendermode InteractiveServer
@using IronPdf
<PageTitle>Print PDF</PageTitle>
<h1>IronPDF</h1>
<p role="status">Click on the button below to create and download the PDF file </p>
<button class="btn btn-primary" @onclick="IncrementCount">Print</button>
@code {
private int currentCount = 0;
/// <summary>
/// Handles the click event of the "Print" button.
/// This function will generate a PDF from an HTML string and prompt the user to download it.
/// </summary>
private void IncrementCount()
{
var renderer = new ChromePdfRenderer();
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file using JavaScript Interop to initiate download
JSRuntime.InvokeVoidAsync("saveAsFile", "output.pdf", Convert.ToBase64String(pdf.Stream.ToArray()));
}
}
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: @page "/PrintPDF" @rendermode InteractiveServer using IronPdf <PageTitle> Print PDF</PageTitle> <h1> IronPDF</h1> <p role="status"> Click on the button below to create and download the PDF file </p> <button class="btn btn-primary" onclick="IncrementCount"> Print</button> @code
"btn btn-primary" onclick="IncrementCount"> Print</button> code
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: Friend @page "/PrintPDF" @rendermode InteractiveServer using IronPdf <PageTitle> Print PDF</PageTitle> <h1> IronPDF</h1> <p role="status"> Click on the button below to create and download the PDF file </p> <button Class="btn btn-primary" onclick
"status"> Click on the button below [to] create [and] download the PDF file </p> <button Class="btn btn-primary" onclick
Private Private Friend page "/PrintPDF" rendermode InteractiveServer [using] IronPdf (Of PageTitle) Print PDF</PageTitle> (Of h1) IronPDF</h1> <p role="status"> Click on the button below [to] create [and] download the PDF file </p> <button Class
Private currentCount As Integer = 0
''' <summary>
''' Handles the click event of the "Print" button.
''' This function will generate a PDF from an HTML string and prompt the user to download it.
''' </summary>
Private Sub IncrementCount()
Dim renderer = New ChromePdfRenderer()
' Create a PDF from an HTML string using C#
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
' Export to a file using JavaScript Interop to initiate download
JSRuntime.InvokeVoidAsync("saveAsFile", "output.pdf", Convert.ToBase64String(pdf.Stream.ToArray()))
End Sub
End Class
Bunun ardından, PDF Dosyasını indirmek için JavaScript kodunu yazın. Bu kodu HTML gövde etiketinin kapsamındaki script etiketine yazın. Projenize eklemeniz gereken kod aşağıdadır.
<script type="text/javascript">
function saveAsFile(filename, bytesBase64) {
if (navigator.msSaveBlob) {
//Download document in Edge browser
var data = window.atob(bytesBase64);
var bytes = new Uint8Array(data.length);
for (var i = 0; i < data.length; i++) {
bytes[i] = data.charCodeAt(i);
}
var blob = new Blob([bytes.buffer], { type: "application/octet-stream" });
navigator.msSaveBlob(blob, filename);
window.navigator.msSaveOrOpenBlob(blob);
}
else {
var link = document.createElement('a');
link.download = filename;
link.href = "data:application/octet-stream;base64," + bytesBase64;
document.body.appendChild(link); // Needed for Firefox
link.click();
document.body.removeChild(link);
}
}
</script>
<script type="text/javascript">
function saveAsFile(filename, bytesBase64) {
if (navigator.msSaveBlob) {
//Download document in Edge browser
var data = window.atob(bytesBase64);
var bytes = new Uint8Array(data.length);
for (var i = 0; i < data.length; i++) {
bytes[i] = data.charCodeAt(i);
}
var blob = new Blob([bytes.buffer], { type: "application/octet-stream" });
navigator.msSaveBlob(blob, filename);
window.navigator.msSaveOrOpenBlob(blob);
}
else {
var link = document.createElement('a');
link.download = filename;
link.href = "data:application/octet-stream;base64," + bytesBase64;
document.body.appendChild(link); // Needed for Firefox
link.click();
document.body.removeChild(link);
}
}
</script>
Bu adımları izledikten sonra kodu çalıştırın, aşağıdaki resme benzer bir görünüm elde edeceksiniz.

PDF dosyası oluşturmak ve indirmek için Yazdır düğmesine tıklayın. Bu işlem, output.pdf ismiyle bir PDF dosyası oluşturacak ve indirecektir.

6. Sonuç
.NET Aspire, bulut ortamında sağlam, gözlemlenebilir ve dağıtık uygulamalar geliştirmek amacıyla tasarlanmış önemli bir çerçeve olarak ortaya çıkmaktadır. .NET Aspire, bir dizi uyumlu araç ve tasarım deseni sunarak bulut-yerel uygulama oluşturmanın karmaşıklıklarını basitleştirir. Kesintisiz orkestrasyon, bileşen entegrasyonu ve kullanıcı dostu bir araç çerçevesi sağlar. Ölçeklenebilirlik, dayanıklılık ve yönetilebilirliğe odaklanarak, .NET Aspire, mikro hizmetler ve dağıtık mimarilere doğru olan paradigma kayması ile uyum sağlar.
.NET Aspire ile yola çıkan geliştiriciler, NuGet paketleri içinde kapsüllenmiş standart bileşenler ve orkestrasyonlu çoklu-proje uygulamalarından oluşan kapsamlı bir özellik setine erişim kazanırlar. Rehberde belirtilen ön koşullara uyarak ve adımları izleyerek, geliştiriciler kolayca .NET Aspire uygulamaları oluşturabilir, çalıştırabilir ve test edebilirler.
Ayrıca, IronPDF'nin Aspire bileşenlerine entegrasyonu, çerçevenin genişletilebilirliğini ve çok yönlülüğünü gösterir, geliştiricilere bulut-yerel uygulamalarına gelişmiş PDF oluşturma ve düzenleme yeteneklerini sorunsuz bir şekilde dahil etme imkanı verir. Genel olarak, .NET Aspire, iyi tanımlanmış hedefleri ve kullanıcı dostu yaklaşımıyla, .NET ekosistemi içinde bulut-yerel uygulamalar geliştirmek ve dağıtmak için verimli ve tutarlı bir çözüm arayan geliştiriciler için değerli bir varlık olarak konumlanmaktadır.
IronPDF ile Blazor web uygulamalarını kullanma hakkında tam bir eğitim için IronPDF'nin blog eğitimine göz atın. IronPDF'in ücretsiz deneme sürümünü almak için IronPDF lisans sayfasını ziyaret ederek ücretsiz deneme lisansınızı alın.
Sıkça Sorulan Sorular
HTML'yi C# içerisinde PDF'ye nasıl dönüştürebilirim?
HTML dizgilerini PDF'lere dönüştürmek için IronPDF'ün RenderHtmlAsPdf yöntemini kullanabilirsiniz. Ayrıca, HTML dosyalarını RenderHtmlFileAsPdf kullanarak PDF'lere dönüştürebilirsiniz.
.NET Aspire'ın bulut yerli uygulama geliştirimindeki amacı nedir?
Geliştiricilerin gözlemlenebilir, üretim zamanına hazır, dağıtılmış uygulamalar inşa etmesine yardımcı olmak üzere tasarlanan .NET Aspire, mikro hizmet mimarilerini yönetmek için orkestrasyon araçları, bileşen entegrasyonu ve kapsamlı bir araç seti sağlamaktadır.
IronPDF, .NET Aspire projeleriyle nasıl entegre olur?
IronPDF, gelişmiş PDF oluşturma ve düzenleme yetenekleri sağlamak için .NET Aspire projelerine entegre edilebilir. Bu, geliştiricilerin bulut yerli uygulamalarında PDF'leri sorunsuz bir şekilde oluşturup yönetmesini sağlar.
IronPDF'in web uygulamalarında yaygın kullanımları nelerdir?
IronPDF, web uygulamalarında PDF raporları oluşturma, HTML içeriği PDF'ye dönüştürme ve belge iş akışlarını yönetme için sıkça kullanılmaktadır. PDF görevlerini .NET uygulamaları içinde yönetmek için geliştiricilere sağlam bir araç seti sunar.
.NET projesinde IronPDF kullanırken sorunları nasıl giderebilirim?
IronPDF sorunlarını gidermek için, doğru bir şekilde NuGet paketinin kurulu olduğundan ve tüm bağımlılıkların doğru bir şekilde referans alındığından emin olun. Konsoldaki hata mesajlarını kontrol edin ve daha fazla kılavuz için IronPDF dokümantasyonunu veya desteğini danışın.
.NET Aspire framework'unun ana bileşenleri nelerdir?
.NET Aspire, bulut yerli uygulamaların geliştirim ve yönetimini kolaylaştırmak için orkestrasyon yetenekleri, daha hızlı geliştirim için önceden paketlenmiş bileşenler ve Visual Studio ile .NET CLI içinde entegre araçlar içerir.
.NET Aspire, mikro hizmet mimarisi için hangi avantajları sunar?
.NET Aspire, mikro hizmet mimarilerini bulut yerli bir ortamda yönetmeyi ve dağıtmayı kolaylaştıran tutarlı bir kurulum deseni, sağlam orkestrasyon ve bileşenlerin sorunsuz entegrasyonunu sunar.
.NET uygulamaları ile IronPDF kullanımı hakkında daha fazla bilgi nereden edinebilirim?
.NET uygulamaları ile IronPDF kullanımı hakkında daha fazla bilgi almak için IronPDF blogu ve dokümantasyonunu ziyaret edebilirsiniz. Bu kaynaklar, IronPDF'in etkili bir şekilde entegrasyonu ve kullanımı hakkında detaylı rehberlik sunmaktadır.




