• 1398/04/26

ارور Child actions are not allowed to perform redirect actions. :

سلام

این کد و گذاشتم توی index   

 @Html.Action("Create", "PaymentRequests")

زمانی که ثبت میکنم ارور بالا رو میده 

میخواستم ببینم کار درسیتیه ؟

اگه هست چطور حلش کنم

  • 1398/04/26
  • ساعت 22:02

سلام 

دیباگ کنید تا مشکل پیدا بشه


  • 1398/04/26
  • ساعت 23:04
System.Web.HttpException: 'Error executing child request for handler 'System.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerAsyncWrapper'.'

 


  • 1398/04/26
  • ساعت 23:26

بهش area="" بدید و تست کنید


  • 1398/04/27
  • ساعت 08:45

Area ندارم توی برنامه


  • 1398/04/27
  • ساعت 11:22

مهم نیست صفت بدید تا مسیر رو پیدا کنه


  • 1398/04/27
  • ساعت 12:56

فکر کنم اگه بتونم این دوتا مدل و با هم ادغام کنم (Create , Index ) مشکلم حل بشه فقط نمیدونم چطور ؟

@model IEnumerable<DataLayer.PaymentRequest>
@model DataLayer.PaymentRequest

منظورم با viewmodel بود

 


  • 1398/04/27
  • ساعت 12:58

وای ...

نمیتونید دو تا مدل به صفحه بدید 

از ViewModel استفاده کنید 


  • 1398/04/28
  • ساعت 18:30

من این view model ساختم و اونو دادم به صفحه 

  public class PaymentRequestViewModel
    {
        public PaymentRequest PaymentRequestVM { get; set; }
        public IEnumerable<PaymentRequest> PaymentRequestsIE{ get; set; }

    }

این ارور میده

The model item passed into the dictionary is of type 'System.Collections.Generic.List`1[DataLayer.PaymentRequest]', but this dictionary requires a model item of type 'DataLayer.PaymentRequestViewModel'.


  • 1398/04/28
  • ساعت 19:22

کجا نمونه سازی کردید ؟ 


  • 1398/04/28
  • ساعت 19:24
public IEnumerable<PaymentRequest> GetAllPaymentRequests()
        {
            return db.PaymentRequests;
        }
        public PaymentRequest GetPaymentRequest(int paymentRequestId)
        {
            return db.PaymentRequests.Find(paymentRequestId);
        }

 


  • 1398/04/28
  • ساعت 19:26
index

 public ActionResult Index()
        {
            var paymentRequests = paymentRequestRepository.GetAllPaymentRequests();
            return PartialView(paymentRequests.ToList());
        }

create


                paymentRequest.DateTime=DateTime.Now;
                paymentRequest.Status = 0;
                paymentRequest.UserID = 1;
                paymentRequestRepository.InsertPaymentRequest(paymentRequest);
                paymentRequestRepository.Save();
                return RedirectToAction("Index");

 


logo-enamadlogo-samandehi