core里的WebAPI中为什么不能用Json()方法来序列化?

eddiego 2019-05-10 11:00:51
请教各位,就是.net core里一个最简单的webAPI,但是当我用Json()方法序列化对象时,vs找不到Json()这个方法。。。我也不确定这个Json是哪个命名空间的。。。。

[HttpGet]
public JsonResult Get()
{
Dal_Demand_test dal = new Dal_Demand_test();
var result = dal.PageList(null,"update_time",1,5);
return Json(result);
}
...全文
326 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
eddiego 2019-05-10
  • 打赏
  • 举报
回复
引用 4 楼 正怒月神 的回复:
我这边没问题,这个命名空间默认就有的。


大佬,我按你的方法试了,但是我的
Microsoft.AspNetCore.Mvc下没有Json()这个方法。。。奇了怪了,我用的.net core 2.1没错呀
正怒月神 版主 2019-05-10
  • 打赏
  • 举报
回复
.net core好像不区分基类了。 web和api都统一继承自Controller
正怒月神 版主 2019-05-10
  • 打赏
  • 举报
回复
我这边没问题,这个命名空间默认就有的。
正怒月神 版主 2019-05-10
  • 打赏
  • 举报
回复
exception92 2019-05-10
  • 打赏
  • 举报
回复
return Json(result); -> return new JsonResult(result);
  • 打赏
  • 举报
回复
确定派生的是ApiController?
  • 打赏
  • 举报
回复
当然前提是你做了类似以下代码
services.AddMvcCore(opt =>
            {
                //opt.ReturnHttpNotAcceptable = false;
                //opt.OutputFormatters.Add()
            })
            .AddJsonFormatters()
            .AddXmlSerializerFormatters()
            .AddFormatterMappings()
            .SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
  • 打赏
  • 举报
回复
Produces(“application/xml”, “application/json”)
强制申明返回json或者xml就行了,没必要再用Json这种方式返回
OrdinaryCoder 2019-05-10
  • 打赏
  • 举报
回复
Microsoft.AspNetCore.Mvc是不是这个库的引用路径有问题 比如你电脑里有多个版本的IDE 这里引用的版本不一样
正怒月神 版主 2019-05-10
  • 打赏
  • 举报
回复
引用 6 楼 eddiego 的回复:
[quote=引用 4 楼 正怒月神 的回复:] 我这边没问题,这个命名空间默认就有的。
大佬,我按你的方法试了,但是我的 Microsoft.AspNetCore.Mvc下没有Json()这个方法。。。奇了怪了,我用的.net core 2.1没错呀[/quote] 那就奇怪了。你新建一个解决方案,试试看呢

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧