从条带 .net API 中检索产品列表并将其传递给 SelectList?
Posted
技术标签:
【中文标题】从条带 .net API 中检索产品列表并将其传递给 SelectList?【英文标题】:Retrieving a list of products from stripe .net API and passing it into a SelectList? 【发布时间】:2020-10-15 18:13:42 【问题描述】:我正在尝试在我的 ASP.NET MVC 应用程序中创建一个用户界面,以便在条带中创建计划。 Stripe 需要产品 ID 才能创建订阅计划,因此我需要显示一个下拉列表,其中列出了可供客户使用的产品。
我有一个选项,客户可以从表单创建产品,这非常有效,但是,我无法理解如何将其传递给 html.DropDownList("ProductId")
。我首先认为我需要保存重复数据才能实现这一点,但是,当我尝试这样做时,我收到一条错误消息,说我的模型的值为 null,因为在我的方法中我正在创建两个产品 -一个在 api 中,一个在本地 - 我已将其改回仅使用 API。
我尝试过的不仅仅是这个,但这是最新的:
public ActionResult Create() StripeList产品 = new StripeList (); ViewBag.Products = new SelectList(products, "Id", "Name"); 返回视图(); [HttpPost] [验证AntiForgeryToken] 公共异步任务 创建(PlanCreateViewModel 模型) 如果(模型状态。IsValid) var options = new PlanCreateOptions Id = 型号.Id, 金额 = 型号.金额, 货币 = model.Currency.ToLower(), 间隔=模型.间隔, 产品 = 型号.产品, IntervalCount = model.IntervalCount, ; var planService = new PlanService(); 等待 planService.CreateAsync(options); return RedirectToAction("索引"); 返回视图(模型); // html helper 返回空引用异常 @Html.DropDownList("Products", null, new @class= "form-control" )
TL;DR:如何检索显示产品名称但在 asp.net mvc5 中具有产品 ID 值的条带产品列表。
【问题讨论】:
【参考方案1】:在查看 Stripe API 后,我设法使用 ProductService()
方法在下拉列表中列出了所有产品。结果如下:
[HttpGet] 公共动作结果创建() var service = new ProductService(); var options = new ProductListOptions Limit = 5, ; StripeListproducts = service.List(options); ViewBag.Products = new SelectList(products, "Id", "Name"); 返回视图();
【讨论】:
以上是关于从条带 .net API 中检索产品列表并将其传递给 SelectList?的主要内容,如果未能解决你的问题,请参考以下文章
如何从当前用户检索(Jwt)访问令牌并将其传递给 asp.net 样板(abp)中的移动应用程序?
通过 REST API 检索结果并将其显示在新活动的列表视图中(列表视图出现小问题)
从 Django HTML 表单中检索数据并将其传递给 MySQL 数据库