切换到另一个剃刀视图后获得之前提交的`post`数据asp.net

时间:2017-12-05 01:47:23

标签: c# asp.net asp.net-mvc razor

我正在将广告数据提交给它的特定控制器动作方法。然后,我需要将用户重定向到付款页面以执行付款详细信息。然后我需要保存广告详细信息。但是,在我切换到之前提交的付款页面后,广告详细信息将丢失,并在尝试将其保存到数据库时返回null

发布Business个详细信息并重定向到付款页面,如下所示

<div class="form-group">
        <div class="col-md-offset-2 col-md-10">
            <input type="submit" value="Submit" formaction="@Url.Action("Index", "Paypal")" class="btn btn-default" />
        </div>
    </div>

然后,用户将重定向到付款页面

public ActionResult Index()
    {
        return View();
    }

如果付款完成,则应将先前提交的数据保存到db

<div class="form-group">
        <div class="col-md-offset-2 col-md-10">
            <input type="submit" value="Submit" formaction="@Url.Action("PaymentWithCreditCard", "Paypal")" class="btn btn-default" />
        </div>
    </div>

PaymentWithCreditCard如下

public ActionResult PaymentWithCreditCard([Bind(Include = "ID,ItemName,ItemPrice,ItemQuantity,cvv,month,year,fname,lname,cardnumber,cardtype,fee,Subtotal,Total,Shipping,Tax")]
    Paymentinfo paymentinfo, [Bind(Include = "ID,Title,Address,Category,Description,Latitude,Longitute,Owner")] Business business)
    {

        @*Some code here...*@

        if (!(business == null))
        {
            business.Owner = System.Web.HttpContext.Current.User.Identity.Name;

            if (ModelState.IsValid)
            {
                db.Businesses.Add(business);
                db.SaveChanges();//This will save null data to database since these will get null values
                return RedirectToAction("Index", "Businesses");
            }

            return View(business);
        }

        return View("Success");
    }

我怎么能想出这个......?

1 个答案:

答案 0 :(得分:0)

您可以创建一个模型并将数据存储在那里,然后将其调用到另一个视图