Yazılım.
CevapSitesi.com Beta!
Çözüm Noktası
Facebook, Twitter, Google+ veya e-posta ile paylaşın.
| Sorular | Makaleler | Üyeler | Etiketler  | İletişim
Soru sormak ya da cevap vermek için;
giriş yapın veya üye olun.

Sosyal medya hesaplarınızla da giriş yapabilirsiniz.

Yazılım Soruları

0

System.NullReferenceException: Model.Products.get; returned null error

merhabalar aşağıda ekran görüntüsünü paylatışım hatayı bir türlü çözemedim yardımcı olabilecek biri var mıdır?

Soran: 17.12.24 13:56
arlihakan
9p 3ü
Çok genel bir hata ve bu billgiyle bir cevap veremeyiz. Sadece Products ne ise onun foreach anında içinde neler olduğunu incelemen gerekir diyebiliriz. Hatanın kaynağı bu Products nesnesini doldurduğun yer olabilir. Elemanı yoktur veya kendi yoktur. →  cevapsitesi 22.12.24 17:48
breakpoint ile birçok kez baktım SelectListItem listesi dolu gözüküyor fakat siparişi kaydet post işlemi gerçekleştiğinde nedense List<SelectListItem> null dönüyor →  arlihakan 03.01.25 07:33

1 Cevap

0
Model bağlamalarında (bindings) sorun olabilir. Sayfa komple bir liste mi döndürüyor? cshtml dosyasını da görmek lazım.

Ben buraya genel bir liste kullanımı örneği bırakayım. Belki birilerine faydası olur.

.Net Core form bağlama (form bindings), liste (select tag) kullanımı örneği

Model:

using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.AspNetCore.Mvc.Rendering;

namespace WebApplication1.Pages
{
    public class IndexModel : PageModel
    {
        [BindProperty]
        public string? ListedenSecilen { get; set; }

        public List<SelectListItem>? Items { get; set; }

        public IndexModel()
        {
            Items = new List<SelectListItem>();
            Items.Add(new SelectListItem("Ankara", "06"));
            Items.Add(new SelectListItem("İstanbul", "34"));
            Items.Add(new SelectListItem("Ankara", "35"));
        }

        public void OnGet()
        {

        }
    }
}

cshtml:

@page
@model IndexModel
@{
    ViewData["Title"] = "SELECT Bağlama";
}

    Seçilen Eleman: @Html.Raw(Model.ListedenSecilen)

    <form method="post">
        <select asp-for="@Model.ListedenSecilen" asp-items="Model.Items" size="5">

        </select>
        <input type="submit" value="Gönder" />
    </form>



Cevaplayan: 04.01.25 12:47
cevapsitesi
102,040p 16ü