我使用ASP.Net web api作为我的服务,从第三方应用程序调用。当我在chrome postman中测试它时它在localhost和部署的服务器上工作得很好,但是我在fiddler中试过它,抛出它并且字符串val总是为null,我应该添加其他东西吗?我不明白为什么它在邮递员中工作正常!对这个有点疯狂! 提前致谢
public bool PostProperty([FromBody] string val)
{
try
{
var reader = new StringReader(val);
var serializer = new XmlSerializer(typeof(property));
var instance = (property)serializer.Deserialize(reader);
}
}
答案 0 :(得分:2)
将您的签名更改为
public async Task<bool> PostProperty()
{
try
{
var reader = new StringReader(await Request.Content.ReadAsStringAsync());
var serializer = new XmlSerializer(typeof(property));
var instance = (property)serializer.Deserialize(reader);
}
}
或
public bool PostProperty([FromBody] property val)
{
}
如果您执行第二个选项,则可能需要在设置中添加以下行
config.Formatters.XmlFormatter.UseXmlSerializer = true;