首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Json API未返回数据

问Json API未返回数据
EN

Stack Overflow用户
提问于 2019-08-02 20:34:05
回答 2查看 46关注 0票数 0

我正在尝试创建一个简单的web API。

我有数据进入控制器,但不能在JSON API中返回它。我认为问题出在返回IEnumerable字符串。

BLL:

代码语言:javascript
复制
public IEnumerable<DTO.Gettod> Gettods()
    {
        DAL.todDataController tdc = new DAL.todDataController();
        return tdc.GetToddMobiles();
    }

型号:

代码语言:javascript
复制
public class TodViewModel
{
    public IEnumerable<DTO.Gettod> ModelGetTod { get; set; }
}

控制器:

代码语言:javascript
复制
 public IEnumerable<string> Get()
 {
     BLL.todManager tm = new BLL.todManager();
     Models.TodViewModel tvm = new Models.TodViewModel();

     tvm.ModelGetTod = tm.Gettods().ToArray();
     return tvm as IEnumerable<string>;
 }

JSON文件只返回一个数组,但我期望返回一个Null。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-08-02 21:06:50

尝试将您的控制器更改为以下设置:

编辑:将接受的答案更改为适合用户的答案

代码语言:javascript
复制
public IHttpActionResult GetToddData () {
    BLL.todManager tm = new BLL.todManager ();
    Models.TodViewModel tvm = new Models.TodViewModel ();

    tvm.ModelGetTod = tm.Gettods ().ToList ();

    //HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK, tvm.ModelGetTod as IEnumerable<string>);

    return Ok (tvm.ModelGetTod);
}

另外,调试并查看是否在tvm.ModelGetTod属性中获得了预期的值。

票数 0
EN

Stack Overflow用户

发布于 2019-08-02 22:17:24

下面是正确的代码,归功于: Bruno在下面的答案中:

代码语言:javascript
复制
  public IHttpActionResult GetToddData()
            {
            BLL.todManager tm = new BLL.todManager();
            Models.TodViewModel tvm = new Models.TodViewModel();

            tvm.ModelGetTod = tm.Gettods().ToList();

            //HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK, tvm.ModelGetTod as IEnumerable<string>);

            return Ok(tvm.ModelGetTod);
        }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57326597

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档