我创建了一个API应用程序,没有完整的MVC模板。但是,带有正文的POST请求总是由于内部服务器错误而失败。
protected override IEnumerable<ServiceReplicaListener> CreateServiceReplicaListeners()
{
return new ServiceReplicaListener[]
{
new ServiceReplicaListener(serviceContext =>
new KestrelCommunicationListener(serviceContext, (url, listener) =>
new WebHostBuilder()
.UseKestrel()
.ConfigureServices(
services => services
.AddSingleton<StatefulServiceContext>(serviceContext)
.AddSingleton<IReliableStateManager>(this.StateManager))
.UseContentRoot(Directory.GetCurrentDirectory())
.UseServiceFabricIntegration(listener, ServiceFabricIntegrationOptions.UseUniqueServiceUrl)
.UseStartup<Startup>()
.UseUrls(url)
.Build()
))
};
}
[Route("[controller]")]
[ApiController]
public class MyController : ControllerBase
{
[HttpGet("Read1")]
public async Task<ActionResult<string>> Read1()
{
return "asd";
}
[HttpPost("Read2")]
public async Task<ActionResult<string>> Read2()
{
return "asd";
}
[HttpPost("Read3")]
public async Task<ActionResult<MyOutput>> Read([FromBody]MyInput input)
{
var a = new MyOutput();
a.Value= "asdasd";
return a;
}
}
using System.Runtime.Serialization;
[DataContract]
public class MyInput
{
[DataMember]
public string Value{ get; }
public MyInput(string val)
{
Value= val;
}
}
{
"Value": "cat"
}
可能是什么原因造成的?
在我的例子中,我缺少json格式化程序:
services.AddMvcCore().AddJsonFormatters();
也许能帮上什么忙。
本文向大家介绍ASPNET中JSON的序列化和反序列化的方法,包括了ASPNET中JSON的序列化和反序列化的方法的使用技巧和注意事项,需要的朋友参考一下 一、JSON简介 JSON(JavaScript Object Notation,JavaScript对象表示法)是一种轻量级的数据交换格式。 JSON是“名值对”的集合。结构由大括号'{}',中括号'[]',逗号',',冒号':',双引号'
我有以下映射: 和以下道: 当在控制器方法中返回此道的结果时,我看到无限递归json: [{"contentId": 1,"name":"DSC_0029. JPG","版主状态":"IN_PROGRESS","版主评论":""","内容":{"userContent":{"contentId": 1,"name":"DSC_0029. JPG","版主状态":"IN_PROGRESS","版主评
本文向大家介绍java对象的序列化和反序列化,包括了java对象的序列化和反序列化的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了java对象的序列化和反序列化,供大家参考,具体内容如下 1. 什么是序列化 将对象转换为字节流保存起来,比如保存到文件里,并在以后还原这个对象,这种机制叫做对象序列化。(补充一句:把对象保存到永久存储设备上称为持久化) 2. 怎么实现序列化
以下代码导致此异常: 所以问题是:如何在GSON序列化和反序列化的泛型HashMap中获得正确的实例?
错误: java.lang.ClassNotFoundException:testprocedure.tp$3在java.net.URLClassLoader$1上运行(未知源)在java.net.URLClassLoader上运行(未知源)在java.security.accessController.doprivileged(本机方法)在java.net.URLClassLoader.find