2012-11-21 201 views
0

我一直在努力尝试在最近3天内工作,您如何将数据从api控制器传递到mvc控制器并使用数据填充selectlistitem。API控制器将数据传递给mvc控制器

我已经看到很多从网页调用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"); 

我如何从变种S(货币和currencyid)的值成selectlistitem。

感谢 乔治

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

什么是var s的格式?你可以在这里发布样本吗? – ryadavilli

+0

嗨@ryadavilli示例代码[{“strCountry”:“阿富汗阿富汗人”,“strCountryCode”:“AFN”},{“strCountry”:“阿尔巴尼亚列克”,“strCountryCode”:“ALL”},{“strCountry”: “阿尔及利亚第纳尔”,“strCountryCode”:“DZD”},{“strCountry”:“安道尔欧元”, – CareerChange

回答

4

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

如果你想分享一些代码,您可以通过代码移入 一些图书馆做这做实例化类WebAPI,并在你的MVC Controller

+0

这就是我对web api感到困惑,如果我只是使用我自己的网站的数据,那么我不需要web api,但是如果我要共享数据,那么api就是要走的路。 – CareerChange

+0

WebApi是调用API的好方法,但前提是您需要从某个远程位置调用api,而不是从项目中调用api。 –

+0

Hi @Asif感谢您的澄清,我看到的所有示例都涉及将数据返回到您自己的网站,这就是为什么我感到困惑。所以我真的不需要使用它 – CareerChange

0

好了,阅读计算器这篇文章后difference between apiController and controller

它我的理解是,如果我将数据返回到自己的网站,然后使用MVC的控制器,但如果我允许第三方来从我的网站使用数据,然后将数据放入api控制器。

此外,如果用户访问我的网站/您的网站,禁用JavaScript,那么json不会在客户端工作,因为需要jQuery等,所以我的理解是使用api,如果您确定访问者不会禁用JavaScript 。

请让我知道是否正确

+0

“将数据返回到我自己的网站”是什么意思?从某些URL(通过AJAX调用或简单链接)检索数据,或检索数据“后端”并显示? Web API使您可以轻松地为其他人(或您自己)创建一个API来访问您的站点/应用程序。如果您只是想从您自己的数据库中获取一些数据来显示,则不需要执行任何操作。只需在控制器中的对象中获取数据,并将它们传递到您的MVC视图中,即可完成。 –

相关问题