API控制器将数据传递给mvc控制器

时间:2012-11-21 11:14:46

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

过去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(currency和currencyid)的值转换为selectlistitem。

由于 乔治

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

2 个答案:

答案 0 :(得分:4)

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

  

如果您想共享一些代码,可以通过移动代码来实现   一些库并在WebAPIMVC Controller中实例化该类。

答案 1 :(得分:0)

好的,所以在阅读stackoverflow difference between apiController and controller

上的这篇文章之后

我的理解是,如果我将数据返回到我自己的网站,然后使用mvc控制器,但如果我允许第三方使用我的网站上的数据,那么将数据放在api控制器中。

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

如果正确的话,请告诉我