سلام دوستان
من در این قسمت از razor که یک متد رو فراخوانی کردم این پیغام خطارو دریافت میکنم(البته در صورتی که جدول dep رکوردی برای کاربرم نداشته باشه)
System.ArgumentOutOfRangeException: 'Index was out of range. Must be non-negative and less than the size of the collection.'
این هم کدم در کنترلر:
public int NumberOfDep() { var username = User.Identity.Name.ToString(); //var userid = db.Users.Where(u => u.UserName == username).Select(a=>a.UserID); var userid = db.Users.First(u => u.UserName == username).UserID; var Deps = db.Dep.Count(d => d.UserID == userid); if (Deps >0) return db.Dep.Count(d => d.UserID == userid); return 0; }
و در view:
<span class="badge badge-primary badge-pill">"@Url.Action("NumberOfDeposit", "Default")"</span>
لطفا راهنمایی کنید ممنون.
در متد ابتدا بررسی کنید کاربر لاگین باشد
سلام استاد خسته نباشید
بله در مراحل trace مقدار userid پر میشه و مقدار NumDep هر صفر return میشه اما باز هم در ویو پیغام خطا صادر میشه؟؟؟؟؟
در کدتون چیز مشکوکی نیست
تنها این مورد بود که میگید مقدار داره
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)