0
我有一個字段,它是一對多關係中多方的外鍵(例如Order
- >LineItem
)。我希望實體框架將該字段標記爲非null,並添加「關於刪除,級聯」關係,因此我使用[Required]
屬性對其進行了修飾。但是,我不想讓Newtonsoft.JSON對該字段進行序列化或反序列化,因此我使用[JsonIgnore]
屬性對其進行了修飾。但是,看起來[Required]
屬性勝過[JsonIgnore]
,因爲我得到一個錯誤,指出該字段是必需的。有什麼辦法可以使這項工作?Newtonsoft.JSON忽略[必填]屬性
public class LineItem
{
[JsonIgnore]
[Required]
public int OrderId { get; set; }
}
顯示在您獲得異常,請 – Steve
什麼是你所得到的確切的錯誤代碼?據我所知,Json.Net根本不查找「[Required]」屬性。它有自己的機制來製作所需的領域,例如'[JsonProperty(Required = Required.Always)]'。 –
我懷疑JSON.NET與你得到的錯誤有什麼關係。很可能,對象正在被反序列化,但是您使用的框架(Web API?MVC?)會阻止請求,因爲它認爲它所採用的參數是無效的。如果您需要'OrderId'來* *不是必需的,那麼請不要使用'LineItem'類。根據您的具體需求,您可以創建一個單獨的模型,其中不需要OrderId或完全不存在。 – StriplingWarrior