【问题标题】:Properties NOT marked with "[DataMember(IsRequired = true)]" are not being sent via JSON未通过 JSON 发送未标记为“[DataMember(IsRequired = true)]”的属性
【发布时间】:2013-03-14 23:23:19
【问题描述】:

这是我的代码:

[DataContract]
public class SideDto
{
    public SideDto() { }

    public SideDto(Side side)
    {
        SideId = side.SideId;
        Stage = side.Stage;
    }

    [Key]
    [DataMember(IsRequired = true)]
    public int SideId { get; set; }

    public Stage Stage { get; set; }

}

当我调用它时,我得到了 SideId,但我没有得到 Stage。如果我将 Stage 标记为 IsRequired,我会得到它,但是当我发布一个没有定义 Stage 的新 Side 时(因为我实际上并不需要它用于数据模型,只是表示层),我得到一个错误。知道如何在没有如此严格的验证的情况下在线获取这些属性吗?

【问题讨论】:

    标签: jquery asp.net-mvc json web-applications asp.net-web-api


    【解决方案1】:

    您只需要使用 DataMember 属性装饰“Stage”属性,没有 IsRequired。

    【讨论】:

    • @RobVious,我们都有这样的时刻
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-11
    • 2016-07-02
    • 2019-01-15
    • 2020-11-12
    • 2011-05-04
    • 1970-01-01
    相关资源
    最近更新 更多