ورود

View Full Version : خطای .NullReferenceException در زمان باگذاری User به فیلد ViewModel



pouria_bayat
سه شنبه 23 شهریور 1395, 22:30 عصر
سلام دوستان من یک ViewModel ساختم به شرح زیر:

public class buyItemViewModels
{
[Required]
public String UserId { get; set; }
[Required]
public string ShopName { get; set; }
[Required]
public string MobileNumber { get; set; }


وقتی که از کد اکشن زیر برای پر کردن این مدل برای ارسال به View استفاده میکنم خطای System.NullReferenceException: Object reference not set to an instance of an object.
را دریافت میکنم و نمیتونم فیلد UserId رو بگیرم
نمونه کد اکشن:

try
{
List<User> userStore = new UserStore<User>(DB).Users.ToList();
foreach (var u in userStore)
{
if (u != null)
{
foreach (Pay p in u.Pays)
{

buyItemViewModels BIVM = new buyItemViewModels();
BIVM.MobileNumber = u.PhoneNumber;
BIVM.ShopName = u.ShopName;
BIVM.UserId = u.Id.ToString();
GBLVM.BuyItems.Add(BIVM);

}
}
}
}
catch (Exception ex)
{
// error
}

دقیقا خطی که Bold شدخ خطای NullRefremces میده در حالی که وقتی Trace میکنم میبیتم مقادیر User و Id اون خالی نیست!!!!!

BIVM.UserId = u.Id.ToString();

pouria_bayat
سه شنبه 23 شهریور 1395, 22:38 عصر
مشگل رو پیدا کردم از یک List برای ذخیره سازی ViewModel استفاده شده بود که List خالی بود New نشده بود. با عرض پوزش. ایراد بر طرف شد.