Asp.Net MVC Yeni Proje Oluşturma Model,Controller,View,Roting ve Razor Kullanımı
MVC; Model, View ve Controller bileşenlerinden oluşan bir yapıdır.
Model: Veri sınıflarının (class) ve veri tabanının tanımlandığı bölüm.
View: Dinamik olarak HTML kodlarının işlendiği arayüzdür.
Controller: View ve Model arasındaki iletişimi sağlayan arka plan kodlamasının yapıldığı bölüm.
Yeni proje Oluşturma
Açılan Ekrandan “MVC 5 Controller – Empty” Seçilir, ilk Controller ismi olarak HomeController yazılır.
Index üzerinde sağ tıklanarak “Add View” seçilerek, View Eklenir.
URL | Controller | Action | Id |
http://localhost/Home | HomeController | Index | null |
http://localhost/ Home/Index/123 | HomeController | Index | 123 |
http://localhost/ Home/Hakkinda | HomeController | Hakkinda | null |
http://localhost/ Home/Iletisim | HomeController | Duzenle | null |
http://localhost/Ogrenci | OgrenciController | Index | null |
http://localhost/ Ogrenci/Duzenle/123 | OgrenciController | Duzenle | 123 |
Model Sınıfları Tanımlama
Model Klasörüne sağ tıklayıp Add > Class Seçilir. Class’a isim verilerek class içindeki değişkenler tanımlanır.
HomeController.cs
namespace proje01.Controllers
{
public class HomeController : Controller
{
// GET: Home
public ActionResult Index()
{
var ogrListe = new List<Ogrenci>{
new Ogrenci() { ogrId = 1, ogrAdSoyad = "Ali", ogrYas = 18 } ,
new Ogrenci() { ogrId = 2, ogrAdSoyad = "Veli", ogrYas = 21 } ,
new Ogrenci() { ogrId = 3, ogrAdSoyad = "Selami", ogrYas = 25 } ,
new Ogrenci() { ogrId = 4, ogrAdSoyad = "Ayşe" , ogrYas = 20 } ,
new Ogrenci() { ogrId = 5, ogrAdSoyad = "Fatma" , ogrYas = 31 } ,
new Ogrenci() { ogrId = 5, ogrAdSoyad = "Hayriye" , ogrYas = 17 }
};
return View(ogrListe);
}
}
}
Index.cshtml
@model IEnumerable<proje01.Models.Ogrenci>
@{
ViewBag.Title = "Index";
}
<h2>Öğrenci Listesi</h2>
<table class="table">
<tr>
<td>Öğrenci No</td>
<td>Adı Soyadı</td>
<td>Yaşı</td>
</tr>
@foreach (var ogr in Model)
{
<tr>
<td>@ogr.ogrId</td>
<td>@ogr.ogrAdSoyad</td>
<td>@ogr.ogrYas</td>
</tr>
}
</table>
Akdeniz";
}
<h2>Bugün: @tarih </h2>
<h3>@ mesaj</h3>
---
@{
double vNotu = 70;
double fNotu = 10;
double ort = (vNotu * 0.4) + (fNotu * 0.6);
if (ort < 60)
{
<p class="text-danger">Ortalama : @ort Sonuç: Kaldı</p>
}
else
{
<p class="text-success"> Ortalama : @ort Sonuç: Geçti</p>
}
}
---
@for (int i = 0; i < 10; i++) {
@i.ToString() <br />
}
HTML Helper Kullanımı
Textbox
Kullanımı
@Html.TextBox("txtAdi",null, new { @class = "form-control" })
Html Çıktısı
<input class="form-control" id="txtAdi" name="txtAdi" type="text" value="">
Eğer Model üzerinden bir Textbox açılacak ise,
@model proje01.Models.Ogrenci
@Html.TextBoxFor(m => m.ogrAdSoyad, new { @class = "form-control" })
@*Şeklinde kullanılır.*@
TextArea
@Html.TextArea("txtAciklama",null, new { @class = "form-control" })
@Html.TextAreaFor(m => m.ogrAdSoyad, new { @class = "form-control" })
CheckBox
@Html.CheckBox("secili", true)
@Html.CheckBoxFor(m=>m.ogrAktif)
RadioButton
Bay: @Html.RadioButton("Cinsiyet","Bay")
Bayan: @Html.RadioButton("Cinsiyet","Bayan")
@Html.RadioButtonFor(m => m.Cinsiyet,"Bay")
@Html.RadioButtonFor(m => m. Cinsiyet,"Bayan")
Hidden
@Html.Hidden("ogrId")
@Html.HiddenFor(m => m.ogrId)
<input type="hidden" id="ogrId" name="ogrId"/>
Password
@Html.Password("Parola")
@Html.PasswordFor(m => m.Parola)
Display
@Html.Display("ogrAdSoyad")
@Html.DisplayFor(m => m.ogrAdSoyad)
Label
@Html.Label("ogrAdSoyad")
@Html.LabelFor(m => m.ogrAdSoyad)
<label for="ogrAdSoyad">Adı Soyadı</label>
İlginizi çekebişlecek benzer Makaleler:
Asp.net MVC ile Not Ortalaması Hesaplama
Asp.Net MVC ile Veri Tabanı İşlemleri (insert,Update,Delete)
Asp.Net MVC AJAX ile Veritabanı işlemleri(insert,Update,Delete)