在asp.net MVC中获取模型值但在传递时没有显示任何内容。
public ActionResult Index(plan plan1)
{
var myCharge = new StripeChargeCreateOptions();
string apiKey = "";
var stripeClient = new StripeClient(apiKey);
var planService = new StripePlanService(apiKey);
StripePlan response = planService.Get("1234");
plan1.Amount = (response.Amount).ToString();
return View();
}
<div>
@Html.TextBoxFor(m => m.Amount)
</div>
如何在文本框中显示金额值
答案 0 :(得分:2)
希望您的View与Model类绑定(实例是plan1)。因此,您需要在return语句中指定模型
return View(plan1);
答案 1 :(得分:1)
这是因为您没有将hte模型对象传递回视图,您需要将实例plan1
传递回来查看操作,只需将您的最后一行操作代码更改为:
return View(plan1);
View获取有关从控制器操作传递的模型对象的信息,您没有将其传回,因此View无法知道它需要使用plan1
对象状态来呈现图。
我希望你现在知道为什么它没有显示你的数据。
答案 2 :(得分:1)
答案已经给出。你应该返回模型bij调用
return View(plan1);
最好将ViewModel而不是模型返回给您的视图。
public class PlanViewModel
{
public plan plan1 { get; set; }
}
public ActionResult Index(plan plan1)
{
var myCharge = new StripeChargeCreateOptions();
string apiKey = "";
var stripeClient = new StripeClient(apiKey);
var planService = new StripePlanService(apiKey);
StripePlan response = planService.Get("1234");
plan1.Amount = (response.Amount).ToString();
var viewModel = new PlanViewModel {
plan1 = plan1
};
return View(viewModel);
}