【问题标题】:API controller passing data to mvc controllerAPI 控制器将数据传递给 mvc 控制器
【发布时间】:2012-11-22 06:28:51
【问题描述】:

过去 3 天我一直在努力解决这个问题,你如何将数据从 api 控制器传递到 mvc 控制器并使用这些数据来填充 selectlistitem。

我看过很多从网页调用api的例子,一切都很好,但是如果用户禁用了javascript怎么办,它不会显示数据。

因此,我们将不胜感激任何有关此示例的帮助。

我的代码是:

web.api

    public IEnumerable<DisplayCurrencyInDDL> GetCurrencyForDDL()
                {
                    var s = _ICurr.InsetCurrencyIntoDataBase();
                    return s.AsEnumerable(); 
                }

mvc 控制器

    WebClient wc = new WebClient();
    var s = wc.DownloadString("http://localhost:50687/api/Currency");

如何将 var s(货币和货币 ID)中的值获取到选择列表项中。

谢谢 乔治

edit data returned as: [ { "strCountry": "Afghan Afghani", "strCountryCode": "AFN" },    { "strCountry": "Albanian Lek", "strCountryCode": "ALL" }, { "strCountry": "Algerian Dinar", "strCountryCode": "DZD" }, { "strCountry": "Andorra Euro1",

【问题讨论】:

  • var s 的格式是什么?您可以在这里发布示例吗?
  • 嗨@ryadavilli 示例代码 [ { "strCountry": "Afghan Afghani", "strCountryCode": "AFN" }, { "strCountry": "Albanian Lek", "strCountryCode": "ALL" }, { "strCountry": "阿尔及利亚第纳尔", "strCountryCode": "DZD" }, { "strCountry": "安道尔欧元",

标签: c# asp.net-mvc asp.net-web-api


【解决方案1】:

我不明白你为什么要这样做。

如果您想共享一些代码,您可以通过将代码移至 一些库并在WebAPI 和您的MVC Controller 中实例化该类。

【讨论】:

  • 这是我对 web api 感到困惑的地方,如果我只是将数据用于我自己的网站,那么我不需要 web api,但如果我要共享数据那么 api 是要走的路。
  • WebApi 是调用 API 的好方法,但前提是您从某个远程位置而不是在您的项目中调用 API。
  • 嗨@Asif 感谢您的澄清,我看到的所有示例都涉及将数据返回到您自己的站点,这就是我感到困惑的原因。所以真的我不需要使用它
【解决方案2】:

好的,所以在阅读了 stackoverflow 上的这篇文章后difference between apiController and controller

我的理解是,如果我将数据返回到我自己的网站,则使用 mvc 控制器,但如果我允许第 3 方从我的网站使用数据,则将数据放入 api 控制器中。

此外,如果用户访问了我的站点/您的站点并且禁用了 javascript,那么 json 将无法在客户端运行,因为需要 jQuery 等,所以我的理解是如果您确定访问者不会禁用 javascript,则使用 api。

如果正确请告诉我

【讨论】:

  • “将数据返回到我自己的网站”是什么意思?从某些 URL 检索数据(通过 AJAX 调用或简单链接),或检索数据“后端”并显示? Web API 旨在让您轻松创建 - 以及 - 供其他人(或您自己)使用的 API 来访问您的站点/应用程序。如果您只是要从自己的数据库中获取一些数据来显示,则无需执行任何此操作。只需在控制器中的对象中获取数据并将它们传递到 MVC 视图中,就完成了。
猜你喜欢
  • 2017-06-08
  • 1970-01-01
  • 1970-01-01
  • 2018-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-11
  • 1970-01-01
相关资源
最近更新 更多