Forum
Merhaba Arkadaşlar,
Yapmak istediğim olay örn: Bir yerden api veya başka birşey vasıtasıyla 8-10 tane civarında kayıt çekiyorum. Bu kayıtları @model IEnumerable<Onizleme.Models.Customers> olarak View sayfamda gösteriyorum ve bu sayfanın altına 1 tane submit buton koyuyorum. İstiyorum ki butona bastığım zaman gitsin bu modelde gösterdiğim kayıtların hepsini ilgili tabloya kayıt etsin.
View içeriğinde gösterirken Textbox yapmak istemiyorum kötü duruyor. Normal tablo gibi görünsün, kaydet dediğimde gitsin kayıt etsin bu modeldeki verileri. Fakat IEnumerable tipindeki modeli bir türlü View'dan Controller'a gönderemedim.
View içeriği şu şekilde :
@model IEnumerable<Onizleme.Models.Customers>
@{
ViewBag.Title = "Kayit";
}
<h2>Müşteriler</h2>
@using (Html.BeginForm("Kaydet","Home", FormMethod.Post))
{
@Html.AntiForgeryToken()
<table class="table table-bordered">
<tr>
<th>Firma ID</th>
<th>Firma Adı</th>
<th>Şehir</th>
<th>Detay</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>@item.ID</td>
<td>@item.SHORT_NAME</td>
<td>@item.CITY_NAME</td>
<td>Güncelle</td>
</tr>
}
</table>
<input type="submit" value="Kaydet" class="btn btn-success btn-sm" />
}
Teşekkürler, İyi Çalışmalar.
aşağıdaki şekilde modeli create eventine gönderip onun içinde dönerek yada bulk insert yaparak ekleme yapabilirsiniz.
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(IEnumerable<Onizleme.Models.Customers> model)
{
foreach (var item in model)
{
/// save işlemi
}
}
ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com
Merhaba hocam,
İlk dediğin şekilde olmuyor. View 'dan controller'a model gitmiyor. Controllerda Breakpoint koyup parametre kısmındaki model'e baktığım zaman count=0 gözüküyor. Veri View kısmından controller'a geçmiyor. View ve Controller'daki ilgili bölümler aşağıdaki gibi..
VİEW
@model IEnumerable<Onizleme.Models.Customers>
@{
ViewBag.Title = "Kayit";
}
<h2>Müşteriler</h2>
@using (Html.BeginForm("Kaydet","Home", new { model = Model }, FormMethod.Post))
{
@Html.AntiForgeryToken()
<table class="table table-bordered">
<tr>
<th>Firma ID</th>
<th>Firma Adı</th>
<th>Şehir</th>
<th>Detay</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>@item.ID</td>
<td>@item.SHORT_NAME</td>
<td>@item.CITY_NAME</td>
<td>Güncelle</td>
</tr>
}
</table>
<input type="submit" value="Kaydet" class="btn btn-success btn-sm" />
}
CONTROLLER
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Kaydet(IEnumerable<Onizleme.Models.Customers> model) // MODEL.COUNT=0 GÖZÜKÜYOR BURADA.
{
return View();
}
çünkü bu kısım yanlış
<tr>
<td>@item.ID</td>
<td>@item.SHORT_NAME</td>
<td>@item.CITY_NAME</td>
<td>Güncelle</td>
</tr>
burada donerken bu ıtem ı tekrar new instance ile modele eklemen lazım eklersen modelı gonderebılırsın
saygılar
ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com
çünkü bu kısım yanlış
<tr>
<td>@item.ID</td>
<td>@item.SHORT_NAME</td>
<td>@item.CITY_NAME</td>
<td>Güncelle</td>
</tr>
burada donerken bu ıtem ı tekrar new instance ile modele eklemen lazım eklersen modelı gonderebılırsın
saygılar
Bu dediğin kısmı pek anlayamadım hocam, bizim modelimiz zaten dolu değil mi ? Niye tekrardan dolduracağız? ve View kısmındamı ekleme yapacağız?
Bunu bir önceki postta sen söyledin breakpoint koyduğunu ve modelin boş geldiğini yanlış mı okudum acaba ? modeli bind ediyorsun for eachle donuyorsun html form submitte modeli tekrar göndermiş durumdasın modeli methoda gönderirken değişken ismin model olarak gidiyor zannedersem debug etmek gerekebilir. orayı bır kontrol edermisin chrome ile f12 ye basarakta post ıslemınde verının gıdıp gıtmedıne bakarmısın ?
saygılar
ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com