c# Web

Visual Studio 2022 Programında Asp.Net Core Empty RazorPage Web Projesi Oluşturma

Bilindiği gibi Microsoft .Net FrameWork tabanlı web projesi yerine tüm platformlarda çalışabilen Core teknolojisini piyasaya sürdü. Artık eski teknolojiyle web projesi oluşturmak yerine Core teknolojisini programcıların kullanımına sundu. Bu teknolojiyle birlikte MVC yapısını kullanarak web projelerini geliştirebilir, Razor teknolojisiyle html sayfasında c# kodlarını kullanabilirsiniz.

Biz burada Boş bir web projesinin nasıl oluşturulduğuna bakacağız. Visual Studio 2022 programını açalım. Buradan Create a new project diyerek yeni bir proje oluşturalım.

Ekrana gelen pencerede dil olarak c#, platform olarak All platforms, ortam olarak Web seçelim. Listelenen şablonlardan Asp.Net Core Empty seçelim ve Next diyelim.

Bu ekranda ise Project name kısmına projenin adını yazalım. Ben burada ToplamaIslemiTerm yazıyorum. Bu ismi yazdığınızda Solution name kutusunda da aynı isim yazacaktır. Şimdilik orayı değiştirmiyorum. Location klasöründe ise projenin saklanacağı yeri belirliyoruz. Burayı da değiştirmeden Next diyerek devam ediyoruz.

Bu pencerede Framework seçimi yapıyoruz. Framework açılır kutuda yer alan seçeneği değiştirmiyoruz. Altında yer alan Configure for HTTPS onay kutusunu kaldıralım.Create diyerek projeyi oluşturalım. Proje oluşturulduğunda öncelikle program.cs dosyasına gelelim. Burada yer alan kodlar aşağıda yer almaktadır.

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

app.MapGet("/", () => "Hello World!");

app.Run();

Burada "Hello World" yazısını "Merhaba Dünya" diyerek değiştirelim ve projeyı çalıştıralım. Tarayıcıda "Merhaba Dünya" yazısını görürsünüz. Projede web sayfası olmamasına rağmen bu mesaj tarayıcıda nasıl görüntülendi. Proje aslında tipik bir Console uygulaması. Sonuç Dos ekranında değil tarayıcıda görüntülenmektedir. Eğer bu mesajı tarayıcıda görebiliyorsanız projenin hatasız bir şekilde oluştuğunu söyleyebiliriz. Ben burada MapGet() metodunu aşağıdaki gibi düzenleyip web sayfasında toplama işlemini yapacağım.

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

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

app.Run();

Projeyi çalıştırdığımızda web sayfasında 10 + 20 = 30 sonucunu görürsünüz. Şimdi bu projenin gerçek bir web projesi olarak ayarlanması işlemine geçelim. Core projelerinde IIS sunucu kurulu olarak geldiği için IIS sunucularında web sayfalarının saklandığı klasör olan wwwroot klasörünü projede oluşturalım. Bu klasör içinde index.html dosyası oluşturalım. Dosyanın içeriğini aşağıdaki gibi düzenleyelim.

<!DOCTYPE html>
<html lang="tr">
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Örnek Uygulama</title>
</head>
<body>
    <h3>Web Sayfama Hoşgeldiniz...</h3>
</body>
</html>

Projeyi çalıştırdığımızda web sayfası tarayıcıda görünmeyecektir. Çünkü oluşturduğumuz wwwroot klasörü ve içindeki dosyalara ulaşım işlemleri henüz tanımlanmamıştır. program.cs dosyasını aşağıdaki gibi düzenleyelim.

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

Şimdi projemizi çalıştıralım. Tanımladığımız web sayfası tarayıcıda görüntülenecektir. Sıra geldi projede RazorPage ya da MVC platformlarını kurma işlemini yapmaya.

Biz burada RazorPage ortamıyla çalışacağız. Öncelikle projeye Pages isminde bir klasör ekleyelim. Klasör içine Index.cshtml isminde boş bir razorpage sayfası ekleyelim. Sayfanın yapısı aşağıdaki gibi olacaktır.

@page
@model CoreRazorEmptyPage.Pages.IndexModel
@{
}

Burada model ile başlayan kodu silelim. Web sayfasını aşağıdaki gibi düzenleyelim.

@page
<!DOCTYPE html>
<html lang="tr">
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>RazorPage Sayfası</title>
</head>
<body>
    <h3>Web Sayfamıza Hoşgeldiniz...</h3>
</body>
</html>

Projeyi kaydedip çalıştıralım. Oluşturduğumuz razorpage sayfası çalışmayacaktır. Çünkü projenin bir RazorPage uygulaması olduğunu belirtmedik. Öncelikle program.cs dosyasında RazorPage() platformunu tanımlamamız ve Pages klasörünü kullanıma açmamız gerekir. Buna göre program.cs dosyasını aşağıdaki gibi düzenleyelim.

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

Projeyi çalıştıralım. Tanımladığımız RazorPage sayfası tarayıcıda görüntülenecektir.


İlgili Makaleler
Web Tabanlı Uygulama Geliştirme Dersi İkinci Dönem İkinci Yazılı Çalışma Soruları
Visual Studio 2022 Programında Asp.Net Web Application Şablonu Görünmüyor Hatasını Düzeltme
Web Sayfasının Hangi Tarayıcıda Çalıştığını Bulma
Bir Otobüs Firmasına Ait Bilet Satış İşlemlerini Class(Sınıf) Tanımlayarak Yapan c# Form Uygulaması
ASP.NET Uygulamasında Metin Kutusunda Sadece Kredi/Banka Kartı Numarası Biçimine Nasıl İzin Verilir?
Visual Studio 2019 Programında c# İle Hazırlanan Web Projesini Local Sunucuda Yayınlama
RadioButton ile Cinsiyet Bilgisini Alan Asp.Net c# Uygulaması
Update Panel İçinde Button Click Çalışmıyor Hatasını Düzeltme
Ajax Modal Popup Kullanarak GridView İçindeki Bir Kaydı Listeleyip Güncelleme
Microsoft Visual Studio Live Share Nedir? Nasıl Kullanılır?
Asp.Net Programında Butonla GridView Nesnesine Yeni Bir Satır Ekleme
Visual Studio 2022 Programında Asp.Net Core Empty RazorPage Web Projesi Oluşturma
Web Uygulamalarında SqLite Kullanımı
Visual Studio 2022 Programında Asp.Net Core Web Projesi Oluşturma
Ayt 123 Sorusunu Core MVC Teknolojisini Kullanarak Çözümünü Bulma
Core Mvc Projesinde Birden Fazla Veriyi Tuple Nesnesiyle Gönderen Uygulama
SqlServer Veri Tabanında Tanımlı Tabloya Video Yükleme İşlemi
Asp.Net Platformunda Harici JSON Dosyasından Namaz Vakitlerini Alma
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama1
Derslerden Alınan Notları TempData Kullanarak Listeleyen Core Mvc Uygulaması

Yorum Ekle
   
Kötü
İyi