Altbilgi içeriğine atla
.NET YARDıM

.NET Aspire (Geliştiriciler İçin Nasıl Çalışır)

.NET Aspire, gözlemlenebilir, üretime hazır, dağıtılmış uygulamalar inşa etmek için uyarlanmış kararlı, bulut için hazır bir yığın çerçevesidir. NuGet paketleri seti aracılığıyla teslim edilen Aspire, bulut-yerel hizmet keşfi düşüncelerini etkin bir şekilde karşılar ve tutarlı kurulum desenleri sağlamayı amaçlar. .NET bulut tabanlı uygulamalar kapsamında, geleneksel monolitik kod yapısından uzaklaşarak, dağıtık uygulamalarda daha küçük, birbirine bağlı bileşenler veya mikro hizmetlerle norm oluşturur. Bu uygulamalar tipik olarak veritabanları, mesajlaşma sistemleri, bulut kaynakları ve önbellekler gibi birçok hizmete güvenir.

Bu bağlamda, dağıtık uygulamalar çeşitleri düşünüldüğünde, farklı barındırıcılar üzerinde çalışan konteynerler gibi birden fazla düğüm boyunca dağılan hesaplama kaynaklarına sahip olanlar bunlardan yararlanır. Bu düğümlerin, son kullanıcılara yanıt ulaştırmak için işbirliği yapmasını sağlamak amacıyla ağ sınırları arasında etkin iletişim kurması esastır. Özellikle, bulut-yerel bir dağıtık uygulama; bulut-yerel uygulama altyapılarında bulunan ölçeklenebilirlik, dayanıklılık ve yönetilebilirlikten yararlanan dağıtılmış uygulamalar içinde ayırt edici bir kategoridir.

Bu makalede, bir web uygulaması oluşturmak için .NET Aspire bileşenlerini tartışacağız. Ayrıca, Aspire .NET projeler bileşeninde PDF dosyalarını oluşturmak ve indirmek için IronPDF kutuphane'ni kullanacağız.

1. .NET Aspire'ye Giriş

.NET Aspire uygulaması, .NET ekosistemi dahilinde .NET bulut-yerel uygulamaları için geliştirme deneyimini artırmayı amaçlayan kararlı bir girişim olarak öne çıkar. Dağıtılmış uygulamaların sorunsuz bir şekilde inşa edilmesini ve işletilmesini kolaylaştırmak için tasarlanmış, tutarlı ve kararlı bir araç ve tasarım desenleri paketi tanıtır. .NET Aspire başlangıç uygulamasının temel hedefleri şunları kapsar:

  1. Orkestrasyon: .NET Aspire orkestrasyon çoklu-proje uygulamalarını ve karmaşık bağımlılıklarını düzenlemek için sağlam yetenekler sağlar. Bu işlevsellik, .NET projelerinin farklı bileşenleri arasında sorunsuz yürütme ve kesintisiz bağlantı sağlar.
  2. Bileşenler: .NET Aspire orkestrasyon tarafından sunulan bileşenler NuGet paketleri içinde kapsullenir, yaygın olarak kullanılan yerel Redis konteyner kaynağı veya Postgres gibi hizmetleri temsil eder. Bu bileşenler, uygulamanızla tutarlı ve kesintisiz bir entegrasyonu garanti altına alan standart arayüzlerle karakterize edilir. Bu paketlenmiş bileşenleri kullanarak, geliştiriciler geliştirme sürecini hızlandırabilir ve .NET Aspire proje şablonlarını kullanarak interoperabilite ve ayarlanabilir bulut tabanlı uygulamalarda daha yüksek bir seviye tutabilir.
  3. Araçlar: .NET Aspire başlatıcı şablonları geliştirme iş akışını basitlestirmeye yönelik kapsamlı bir araç seti içerir. Proje şablonları ve araç deneyimleri, Visual Studio ve .NET CLI'e özenle entegre edilmiştir, geliştiricilere .NET Aspire uygulamaları oluşturmaya ve etkileşime kolaylık sağlar. Bu kapsayıcı araç çerçevesi, verimliliği artırır ve .NET Aspire uygulama konfigrasyonlarini ve proje şablonlarını geliştirmek ve yönetmek için bir bütün ortam sağlar.

Özetle, .NET Aspire, orkestrasyon, bileşen entegrasyonu ve araçlar gibi belirlі bulut-yerel konuların kilit yönlerini ele alan bütünsel bir çözüm sunar, tümü .NET bulut-yerel uygulamaların yapılmasını ve dağıtılmasını yükseltmek için tasarlanmıştır.

2. .NET Aspire ile Başlarken

.NET Aspire'ı ele almadan önce, aşağıdaki bileşenlerin yerel olarak kurulmuş olduğundan emin olun:

  1. .NET 8.0: Sisteminizde .NET 8.0'in kurulu olduğundan emin olun.
  2. .NET Aspire İş Yükü Yönetimi: .NET Aspire iş yükünü, ya VS yükleyici ile ya da dotnet workload install aspire komutunu çalıştırarak edinebilirsiniz.
  3. Entegre Geliştirici Ortami (IDE) veya Kod Editoru: Visual Studio 2022 önceden sisteme kurulu olmalıdır.

Tüm bu gereksinimler karşılandığında, uygulamaları işleyen ilk .NET Aspire bileşenlerinin geliştirilmesi için hazırsınız.

3. Yeni bir .NET Aspire Projesi Oluşturun

.NET Aspire uygulamaları oluşturmak için aşağıdaki adımları izleyin.

  1. Visual Studio'yu açın ve Yeni bir proje oluştur üzerine tıklayın.
  2. Yeni bir pencere görünecek. Bu yeni pencerede, arama çubuğunda Aspire arayın.
  3. Aşağıda bir liste belirecek, o listeden Aspire Başlangıç uygulama barındırıcısı projesini ve paket referanslarını seçin ve İleri'ye tıklayın.
  4. Yeni bir pencere belirecek. Bu yeni pencerede proje adını yazın ve İleri'ye tıklayın.
  5. Bu pencerede hedef framework'ü seçin ve Oluştur düğmesine tıklayın.

.NET Aspire uygulaması birkaç saniye içinde oluşturulacak ve geliştirme ile özelleştirmeye başlamak için hazır olacaksınız.

4. .NET Aspire uygulamasını Çalıştırma ve Test Etme

Proje oluşturulduğunda, 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 sayfasını açacak.

Bu ana sayfa, gözlemlenebilir üretim hazır .NET Aspire başlangıç uygulamaları oluşturmak için .NET Aspire Bulut yerlisi uygulamalar yığınının bir parçasını içerecektir.

.NET Aspire (Gelisticiler Icin Nasıl Calisir): Sekil 1 - Aspire Ana Sayfasi

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

.NET Aspire (Gelisticiler Icin Nasıl Calisir): Sekil 2 - Yeni Web Sayfasi

5. Introducing IronPDF C

IronPDF belgeleri, bunu geliştiricilerin uygulamalarına ileri düzey PDF oluşturma ve manipülasyon yeteneklerini zahmetsizce entegre edebilmelerini sağlayan güçlü ve çok yönlü bir C# kütüphanesi olarak tanımlar. Iron Software tarafından geliştirilen bu özellik zengin kütüphane, C# uygulamaları içinde doğrudan PDF belgeleri oluşturma, değiştirme ve işleme için kapsamlı bir dizi araç sunar.

IronPDF ile geliştiriciler, HTML, görüntüler ve mevcut belgeler gibi çeşitli kaynaklardan PDF'ler oluşturabilir ve formatlama ve düzen üzerinde kesin kontrol sağlar. Dinamik raporlar oluşturuyor, HTML içeriğini PDF'ye dönüştürüyor veya mevcut belgelere açıklama ekliyor olsun, IronPDF PDF işlemi sürecini kolaylaştırır, güvenilir ve verimli bir çözüm arayan C# geliştiricileri için değerli bir varlık haline getirir.

5.1. IronPDF'i Yükleme

IronPDF'yi sorunsuz bir şekilde kurmak için Visual Studio içindeki NuGet Paket Yöneticisi'nden yararlanın. Kurulum için belirtilen paket IronPDF olarak adlandırılır. Sadece aşağıdaki komutu Paket Yöneticisi Konsolu'na kopyalayıp yapıştırın ve enter tuşuna basın:

Install-Package IronPdf

5.2. IronPDF Aspire Bileşeni ile Entegrasyonu

IronPDF'yi web uygulamasıyla entegre etmek Aspire bileşeni ile entegre etmenin aynısıdır çünkü Aspire bileşenleri Blazor uygulamasını bir bileşen olarak kullanabilir. Bu kod örneğinde, Bir Sayaç Sayfasının Kodunu bir PDF dosyası oluşturmak ve indirmek için değiştireceğiz.

counter.razor dosyasını açın ve kodu aşağıdaki kod ile 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
$vbLabelText   $csharpLabel

Bundan sonra PDF Dosyasını indirmek için JavaScript kodunu yazın. Bu kodu HTML gövde etiketi kapsamındaki script etiketine yazın. Aşağıda projenize eklemeniz gereken kod verilmiştir.

<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>
JAVASCRIPT

Bundan sonra Kodu sadece çalıştırın ve aşağıdaki gibi bir resim görünecektir.

.NET Aspire (Gelisticiler Icin Nasıl Calisir): Sekil 3 - Blazor

Bir PDF dosyası oluşturmak ve indirmek için Yazdır düğmesine tıklayın. Output.pdf adlı PDF dosyasını oluşturacak ve indirecek.

.NET Aspire (Gelisticiler Icin Nasıl Calisir): Sekil 4 - PDF Indirme

6. Sonuç

.NET Aspire, bulut ortamında sağlam, gözlemlenebilir ve dağıtılmış uygulamalar geliştirmek üzere tasarlanmış bir ana çerçeve olarak ortaya çıkıyor. Uyumlu bir dizi araç ve tasarım deseni sağlayarak, .NET Aspire bulut yerlisi uygulamaların inşa edilmesiyle ilişkili karmaşıklıkları basitleştirir, kesintisiz orkestra, bileşen entegrasyonu ve kullanıcı dostu bir araç çerçevesi sunar. Ölçeklenebilirlik, esneklik ve yönetilebilirliğe odaklanarak, .NET Aspire mikro hizmetler ve dağıtılmış mimarilere geçişle uyumlu hale gelir.

Geliştiriciler .NET Aspire ile yolculuklarına başladıklarında, NuGet paketlerinde kapsüllenmiş standart bileşenler ve koordine edilmiş çoklu proje uygulamalarına kadar kapsamlı bir özellik paketi elde ederler. Gereksinimlere uyarak ve kılavuzdaki basit adımları izleyerek, geliştiriciler zahmetsizce .NET Aspire uygulamaları oluşturabilir, çalıştırabilir ve test edebilir.

Ayrıca, IronPDF'nin Aspire bileşenlerine entegrasyonu, framework'ün genişletilebilirliğini ve çok yönlülüğünü gösterir, geliştiricilerin bulut yerlisi uygulamalarına ileri düzey PDF oluşturma ve manipülasyon yeteneklerini sorunsuzca entegre etmesine olanak tanır. Genel olarak, .NET Aspire, iyi tanımlanmış hedefleri ve kullanıcı dostu yaklaşımı ile kendini değerli bir varlık olarak konumlandırır, .NET ekosisteminde bulut yerlisi uygulamalar geliştirmek ve dağıtmak için verimli ve tutarlı bir çözüm arayan geliştiriciler için vazgeçilmezdir.

Blazor web uygulamaları ile IronPDF kullanımı ile ilgili tam bir eğitim için IronPDF'nin blog eğitimini ziyaret edin. IronPDF'nin ü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#'de PDF'ye nasıl dönüştürebilirim?

HTML dizgilerini PDF'lere dönüştürmek için IronPDF'nin RenderHtmlAsPdf yöntemini kullanabilirsiniz. Ayrıca RenderHtmlFileAsPdf kullanarak HTML dosyalarının PDF'lere dönüştürülmesini de sağlayabilirsiniz.

.NET Aspire'in bulut-temelli uygulama geliştirmedeki amaci nedir?

.NET Aspire, geliştiricilere gozlemlenebilir, uretim hazır, dağıtilmis uygulamalar geliştirmelerine yardimci olmak için tasarlanmistir. Bulut-temelli uygulamalarda mikro hizmet mimarilerini yönetmek için orkestrasyon araclari, bilesen entegrasyonu, ve kapsamli bir arac seti sunar.

IronPDF, .NET Aspire projeleriyle nasıl entegre olur?

IronPDF, gelişmiş PDF oluşturma ve işleme yetenekleri sunarak .NET Aspire projelerine entegre edilebilir. Bu, geliştiricilerin bulut-dogumlu uygulamalari icinde PDF'leri sorunsuz bir şekilde yaratmalarini ve yönetmelerini saglar.

Web uygulamalarinda IronPDF'in yaygin kullanilisimlari nelerdir?

IronPDF, genellikle web uygulamalarinda PDF raporlari oluşturmak, HTML icerigini PDF'ye dönüştürmek ve doküman is akislarini yönetmek için kullanilir. Geliştiricilere .NET uygulamalari icinde PDF işlemleri için güçlü bir arac seti sunar.

IronPDF'i .NET projesinde kullanirken sorunlari nasıl cozerim?

IronPDF sorunlarini cozmek için, NuGet paketi doğru bir şekilde yüklendigin ve tüm bagimliliklarin doğru bir şekilde referans verildiginden emin olun. Konsolda herhangi bir hata mesaji arayin ve daha fazla yonlendirme için IronPDF belgelerini veya destegini danisin.

.NET Aspire framework'unun ana bilesenleri nelerdir?

.NET Aspire, bulut-dogumlu uygulamalari geliştirme ve yönetimini hizlandirmak için Visual Studio ve .NET CLI icindeki aletlerle entegre edilen, onceden pakeyli bilesenler ve orkestrasyo yetenekleri iceren bir framework'tur.

.NET Aspire, mikroservis mimarisi için hangi avantajlari sunar?

.NET Aspire, tutarli bir kurulum deseni, güçlü bir orkestrasyo ve bilesenlerin sorunsuz entegrasyonunu sunarak bulut-dogumlu ortamda mikroservis mimarilerini yönetmeyi ve kurmayi kolaylastirir.

IronPDF'i .NET uygulamalari ile kullanmak hakkinda daha fazla bilgiyi nereden öğrenebilirim?

IronPDF'i .NET uygulamalari ile kullanmak hakkinda daha fazla bilgi edinmek için IronPDF blogunu ve belgelerini ziyaret edebilir, eğitimler ve örnekler bulabilirsiniz. Bu kaynaklar, IronPDF'in etkili bir şekilde entegre edilebilmesine ve kullanilabilmesine dair detayli rehberlik sunar.

Jacob Mellor, Teknoloji Direktörü @ Team Iron
Chief Technology Officer

Jacob Mellor, Iron Software'in Teknoloji Müdürü ve C# PDF teknolojisinin öncüsü olan vizyoner bir mühendis. Iron Software’in temel kod tabanının ilk geliştiricisi olarak, şirketin ürün mimarisini kuruluşundan bu yana şekillendirdi ve CEO Cameron Rimington ile birlikte NASA, Tesla ve ...

Daha Fazlasını Oku

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara