c# Web

Lets Explain the Differences Between Net and Core by Adding

Microsoft programcıların web projelerinde kullanabileceği iki farklı teknolojiyi geliştirmiştir. Bunlar .Net Framework ve Core. Net Framework statik olarak windows işletim sisteminde çalışmaktadır. Bu teknolojiyi kullanarak c#, Vb.net ve f# programlama dillerini web projesinde kullanabilirsiniz. Core teknolojisinde ise c# dilini html sayfalarında bile kullanma imkanına sahipsiniz. Ayrıca yaptığınız uygulamalar tüm platformlarda hatasız bir şekilde çalışacaktır. Şimdi lafı uzatmadan bu iki platformu anlayabilmek için toplama işlemini her iki teknolojide gerçekleştirelim.

Visual Studio 2022 programını açalım.

Her iki teknolojide oluşturulacak projeleri D sürücüsünde DifNetAndCore klasöründe saklayacağız. Bunun için öncelikle boş bir Solution oluşturmak istiyorum.

Create a new project diyerek yeni proje oluşturalım.

Create a new project diyalog pencersinde arama kutusuna blank yazıyorum. Ekrana gelen Blank Solution şablonunu seçiyorum. Next diyerek devam ediyorum.

Solution name kutusuna DifNetAndCore yazıyorum. Location kutusunda yazılanları siliyorum ve oraya D:\ yazyıyorum. Create diyerek işlemi tamamlıyorum. Artık D sürücüsünde CoreWeb isimli bir klasörü proje klasörü olarak tanımlamış olduk.

Bu proje altında .Net Framework uygulaması için NetFrameWork klasörünü, Core uygulaması için Core klaörünü oluşturalım.  

İlk olarak .Net FrameWork teknolojisini anlamaya çalışalım. Bunun için NetFrameWork klasörü üzerinde farenin sağ tuşuna basalım ve ekrana gelen içerik menüsünde yer alan Add komut grubunu seçelim. Ekrena gelen komutlardan New project komutunu seçerek yeni bir proje oluşturalım. 

Add a new project diyalog pencersinde Dil olarak c#, platform olarak Windows, ortam olarak Web seçelim. Ekrana gelen şablonlardan Asp.Net Web Application(.Net Framework) seçelim. Next diyerek devam edelim.

Proje ismi olarak AdditionNet yazalım. Framework olarak .Net Framework 4.8 kalabilir. Create diyerek devam edelim.

Ekrana gelen pencerede boş bir proje oluşturacağımız için Empty şablonunu seçelim ve Configure for Https onay kutusunu iptal edelim. Create diyerek projeyi oluşturalım.

Böylece boş bir .Net Framework projesi oluşturmuş olduk. Şimdi projeyi çalıştıralım. Projede herhangi bir web sayfası olmadığı için tarayıcı ekranında hata mesajı verecektir. Boş bir web sayfası eklemek için proje ismi üzerinde farenin sağ tuşuna basalım. Ekrana gelen içerik menüsünden Add komut grubunu, buradan Web form komutunu seçelim. Ekrana gelen metin kutusuna index yazalım ve Ok diyerek web sayfasını oluşturalım. Web sayfasının uzantısı .aspx olacaktır. Bu sayfa aracılığıyla hem web sayfasının tasarımını hem de c# dilini kullanarak arka planda kodlarını yazabileceğiz. 

Şimdi bu sayfa aracılığıyla toplama işlemini gerçekleştireceğiz. Kodların yazıldığı sayfaya geçmek için web sayfasının source kısmında boş bir yerde farenin sağ tuşuna basalım. Ekrana gelen içerik menüsünden View Code komutunu çalıştıralım. Ekrana index.aspx.cs isimli dosya gelecektir. Burada Page_Load metodunun içine gelelim. Aşağıdaki kodları yazalım.

        protected void Page_Load(object sender, EventArgs e)
        {
            int a, b;
            int c;

            a = 3;
            b = 5;
            c = a + b;

            Response.Write(a + " + " + b + " = " + c);
        }

Web projesini çalıştıralım. Web sayfasında toplama işleminin sonucunu görürsünüz. Şimdi web sayfasını nesneler kullanarak tasarlayalım. Öncelikle projeye Bootstrap kütüphanesini ekleyelim. Bunun için proje ismi üzerindeyken farenin sağ tuşuna basalım. Ekrana gelen içerik menüsünden Manage Nuget Packages komutu seçelim. Ekrana gelen pencerede Browse sekmesine gelelim. Burada Bootstrap yazalım ve projeye yükleyelim. 

Daha sonra jquery kütüphanesini aynı yeri kullanarak projeye ekleyelim. Aşağıdaki satırları web sayfasının <head> etiketi arasına ekleyelim.

    <link href="Content/bootstrap.min.css" rel="stylesheet" />
    <script src="Scripts/jquery-3.7.1.min.js"></script>
    <script src="Scripts/bootstrap.min.js"></script>

Artık web sayfasını tasarlayabiliriz. Aşağıdaki kodları <form> etiketi arasına yazalım. Web sayfasının başlığını belirleyelim.

        <div class="container">
            <h1 class="text-center mt-5">Toplama İşlemi</h1>
        </div>

Kullanıcının gireceği iki sayı için iki tane metin kutusu oluşturalım.

            <div class="row justify-content-center mt-5">
                <div class="col-6">
                    <asp:TextBox ID="txtA" runat="server" 
CssClass="form-control" placeholder="Birinci sayıyı girin">
</asp:TextBox>
                </div>
                <div class="col-6">
                    <asp:TextBox ID="txtB" runat="server" 
CssClass="form-control" placeholder="İkinci sayıyı girin">
</asp:TextBox>
                </div>
            </div>

Toplama işlemini gerçekleştirmesi için btnTopla isminde bir buton oluşturalım.

            <div class="row justify-content-center mt-3">
                <div class="col-6">
                    <asp:Button ID="btnTopla" runat="server" 
Text="Topla"  CssClass="btn btn-primary" />
                </div>
            </div>

Toplama işleminin sonucunu görüntülemek için bir tane label ekleyelim.

            <div class="row justify-content-center mt-3">
                <div class="col-6">
                    <asp:Label ID="lblC" runat="server" 
CssClass="form-control"></asp:Label>
                </div>
            </div>

Peki, kodları nereye yazacağız. Web sayfasını Design konumuna getirelim. Butonun üstünde fareyle iki defa tıklayalım. Butonun Click olayı oluşacaktır. Kodlarımızı yazalım.

        protected void btnTopla_Click(object sender, EventArgs e)
        {
            int a, b;
            int c;

            a = Convert.ToInt32(txtA.Text);
            b = Convert.ToInt32(txtB.Text);

            c = a + b;

            lblC.Text = a + " + " + b + " = " + c;
        }

Web sayfasını çalıştıralım. Toplama işleminin hatasız bir şekilde yapıldığını görürsünüz. Böylece .Net Framework kullanarak web sayfasını tasarlamış olduk. Şimdi Core teknolojisini kullanarak aynı işlemleri gerçekleştirelim. Core teknolojisini kullanarak web projeleri geliştirmek istiyorsak bu işlemleri yapmak için Razor Page ya da MVC teknolojilerini kullanabiliriz. Ben burada boş bir Core projesi kullanacağım. Bunun için Core klasörü üzerinde farenin sağ tuşuna basalım ve ekrana gelen içerik menüsünde yer alan Add komut grubunu seçelim. Ekrena gelen komutlardan New project komutunu seçerek yeni bir proje oluşturalım. 

Add a new project diyalog pencersinde Dil olarak c#, platform olarak All platforms, ortam olarak Web seçelim. Ekrana gelen şablonlardan Asp.Net Core Empty seçelim. Next diyerek devam edelim.

Proje ismi olarak AdditionCore yazalım. Next diyerek devam edelim. Ekrana gelen pencerede Framework olarak .Net 8,0 kalabilir. Configure for Https onay kutusunu iptal edelim. Create diyerek projeyi oluşturalım.

Böylece boş bir Core projesi oluşturmuş olduk. Şimdi projeyi çalıştıralım. Web sayfasında "Hello World" mesajını görürsünüz. Projede herhangi bir web sayfası olmamasına rağmen bu mesaj nereden geldi. Projenin hata vermemesi ve kurulumun doğru yapıldığını göstermek amacıyla böyle bir mesajla karşılaşırsınız. Bu mesaj program.cs dosyasının içinde yer alan komuttan dolayı ekrana gelmektedir. 

Şimdi burada sabit değerler kullanarak toplama işlemini gerçekleştirelim.

app.MapGet("/", () =>
{
    var a = 3;
    var b = 5;
    var c = a + b;
    return $"{a} + {b} = {c}";
});

Web sayfasını çalıştıralım. Tarayıcı ekranında toplama işleminin sonucunu görürsünüz. Şimdi web sayfasının tasarımını gerçekleştirelim. Öncelikle projemize wwwroot klasörünü ekleyelim. Klasör seçiliyken farenin sağ tuşuna basalım. Ekrana gelen içerik menüsünden Add, daha sonra New Item komutunu seçelim. Ekrana gelen sayfalardan HtmlPage sayfasını seçelim. Sayfanın ismini index.html olarak belirleyelim. Web sayfasını çalıştıralım. Sayfanın çalışmadığını görürsünüz. Öncelikle wwwroot klasörüne ulaşım işlemini gerçekleştimeniz gerekir. Bu işlemleri yapalım.

var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();
app.UseDefaultFiles();
app.UseStaticFiles();
app.Run();

Web sayfasını çalıştıralım. Sayfanın çalıştığını görürsünüz. Ancak web sayfasında kod yazmak için RazorPage teknolojisinin aktif hale gelmesi gerekir. Bunun için öncelikle Pages isminde bir klasör oluşturmalıyız. Daha sonra oluşturulan klasörün içine Index.cshtml isminde boş bir RazorPage sayfası ekleyelim. Kodları aşağıdaki gibi düzenleyelim.

@page
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@model AdditionCore.Pages.IndexModel
@{
    int a = 0, b = 0, c = 0;
    string sonuc = "";
    if (Request.Method == "POST")
    {
        a = Convert.ToInt32(Request.Form["txtA"]);
        b = Convert.ToInt32(Request.Form["txtB"]);
        c = a + b;
        sonuc = a + " + " + b + " = " + c;
    }
}

<h2>Toplama</h2>

<form method="post">
    <label for="number1">Birinci Sayı:</label>
    <input id="number1" name="txtA" type="number" />

    <label for="number2">İkinci Sayı:</label>
    <input id="number2" name="txtB" type="number" />
    <br />
    <button type="submit">Topla</button>
    <br />
    <label>@sonuc</label>
</form>

Projeyi çalıştıralım. Toplama işleminin yapıldığını görürsünüz.


İlgili Makaleler
Web Tabanlı Uygulama Geliştirme Dersi İkinci Dönem İkinci Yazılı Çalışma Soruları
2020 TYT Matematik Ortakatlı Kuralıyla İlgili Sorunun Çözümünü c# Diliyle Web Form Sayfasında Kodlama
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama1
Core Mvc Projesinde Tuple Nesneleri Post Etme ve Yakalama İşlemleri
Web Tabanlı Uygulama Geliştirme Dersi İkinci Dönem Birinci Yazılı Çalışma Soruları
Visual Studio 2022 Programında Asp.Net Web Application Şablonu Görünmüyor Hatasını Düzeltme
Seri Port Yardımıyla Arduino Devresine Bağlanıp Ledleri Asp.Net Web Uygulamasından Yakıp Söndürme
Sitenin Alexa Dünya Sıralamasını Kodlarla Öğrenme
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama4
Personele Ait Boy ve Kilo Bilgilerine Göre İdeal Kiloyu Bulan Uygulamayı Asp.Net İle Yapınız
Bir Otobüs Firmasına Ait Bilet Satış İşlemlerini Class(Sınıf) Tanımlayarak Yapan c# Form Uygulaması
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama2
RadioButton ile Cinsiyet Bilgisini Alan Asp.Net c# Uygulaması
Web Uygulamalarında SqLite Kullanımı
Asp.Net Uygulamasında Manual Olarak JSON Oluşturma
Asp.Net Uygulamalarında DataList (Veri Listeleme) Kontrolü
Asp.Net Uygulamalarında Modal PopUp Oluşturma
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama3
C# Uygulamasında Miladi Takvimi Hicri Takvime, Hicri Takvimi Miladi Takvime Dönüştürme
2022 TYT Matematik Onbirinci Sorunun Çözümünü c# Diliyle Web Form Sayfasında Kodlama

Yorum Ekle
   
Kötü
İyi