سلام به دوستان عزیز
بنده یک لیستی از یک کلاس یا همون وویو مدل که دارای بفرض 2 تا پراپرتی هست.
مثلا کلاس Details رو در نظر بگیرید:
public class Details
{
public int detailId {get; set;}
public long fianlPrice {get; set;}
}
حالا یک لیستی از این Details رو به وویو ارسال کردم.
List<Details>
حالا در اون ویوو میخوام همین لیست Detail رو به یه کنترلر دیگه ارسال کنم ( جزییات هر دوره سبد خرید رو در کنترلر Cart محاسبه کردم و ریختم توی یه مدل و لیستش رو فرستادم وویو سبد خرید و حالا برای پرداخت و تایید نهایی لازمه مجدد همین لیست که در وویو سبد خرید قرار داره بره به کنترلر FinallyCart)
از تگ فرم استفاده کردم و input اما اینکه بخوام لیست مدل رو بفرستم به کنترلر نمیشه و سرچ هم که کردم به نتیجه ای نرسیدم
کسی از دوستان اطلاع داره روش حل رو ؟ ممنون
بهتر بود که کدهاتون رو تا حدودی قرار میدادید. ولی در هر صورت اگر شما میخواید یک List رو ارسال کنید می تونید از ViewBag استفاده کنید. با استفاده از ViewBag میتونید اطلاعات پیچیده رو ارسال کنید.
public IActionResult Index()
{
ViewBag.Data = _context.Products.ToList();
return View();
}
اما اگر شما می خواید یک List رو از View به کنترلر ارسال کنید یکی از راهها استفاده از جی کوئری و ایجکس هست. یعنی باید List خودتون رو داخل یک آرایه بریزید و سپس آرایه رو به صورت جیسون به کنترلر ارسال کنید. کدهای این کار رو قرار میدم ولی مطمئنا برای استفاده توی پروژه باید تغییراتی بدید.
<script>
array.push({
id: id,
firstname: 'firstname',
family: 'family',
});
qarray = JSON.stringify({ 'qarray': array });
$.ajax({
type: "post",
url: '@Url.Action("Action","Controller")',
dataType: "json",
data: {
'qarray': qarray
}
</script>
با استفاده از کدهای بالا به راحتی میتونید یک آرایه از اطلاعات داشته باشید و به سمت سرور ارسال کنید. (کدهای بالا مثال هست و برای استفاده باید کمی تغییرات بدید)
در سمت کنترلر هم میتونید به این صورت اطلاعات رو دریافت کنید.
public IActionResult Action(ViewModel model)
{
var result = JsonConvert.DeserializeObject<List<Viewmodel>>(qarray);
}
public class ViewModel
{
public int id {get; set;}
public string firstname {get; set;}
public string family {get; set;}
}
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
78
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
109
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1034
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
430
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1356
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4800
- پاسخ :
1
|
تاریخ :
1403/07/27
- ساعت :
03:21:00 PM
- بازدید :
215
- پاسخ :
1
|
تاریخ :
1403/07/26
- ساعت :
09:00:00 PM
- بازدید :
117
- پاسخ :
0
|
تاریخ :
1403/05/16
- ساعت :
09:57:00 AM
- بازدید :
397
- پاسخ :
2
|
تاریخ :
1403/06/25
- ساعت :
11:39:00 PM
- بازدید :
568
- پاسخ :
1
|
تاریخ :
1401/02/24
- ساعت :
02:17:00 PM
- بازدید :
2013
- پاسخ :
1
|
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
78
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
109
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1034
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
430
- پاسخ :
1
|
تاریخ :
1402/08/01
- ساعت :
06:25:00 PM
- بازدید :
931
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1356
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4800
- پاسخ :
1
|
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1161
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
599
- پاسخ :
1
|