ASP.当类的属性定义为自动实现时,. NET Web API POST参数为空

本文关键字:NET Web API 参数 POST 属性 定义 ASP 实现 | 更新日期: 2023-09-27 18:05:52

谁知道为什么自动实现的版本的类不通过Post到Web API?

namespace N_EWA
{
    public class testMe
    {
        public bool Pending { get; set; }
    }
}
然而

…如果我将类和属性定义如下....它可以识别传入的对象并工作....

namespace N_EWA
{
    public class testMe
    {
        private bool pending { get; set; }
        public bool Pending
        {
            get { return pending; }
            set { pending = value; }
        }
    }
}

ASP.当类的属性定义为自动实现时,. NET Web API POST参数为空

不可能。两者在功能上是相同的。显示更多的代码上下文——我向你保证一定有问题。

我本来打算把这个放在评论里的,但是我认为它应该有一个单独的答案条目。

我一夜之间想到了这个....因为自动实现的属性是由编译器本身创建的,可能是因为我运行这个作为一个标准的网站,而不是一个web应用程序,web API是无法与自动实现的类/属性工作,因为生成的私有字段用于管理属性的get/set只存在于编译的代码,就像你得到当你有一个web应用程序?

官方的答案是我的用户错误....: -)

由于某种未知的原因,我试图发布的复杂对象将布尔值设置为True和False(大写T和F).....只需将值更改为true和false(均为lower)即可解决此问题。