İçeriğe geç

Under-posting (ARCH805)

Anahtar dotnet.api.under-posting · Önem warning · Kategori api

Bir controller action’ının istek gövdesinden okuduğu modellerde, hiçbir şeyin zorunlu kılmadığı nullable olmayan değer tipi alanları (int, bool, DateTime, Guid, enum) işaretler. Alanı göndermeyen istemcinin değeri varsayılana düşer ve action bunu gerçek bir değerden ayıramaz. Nullable olmayan bir değer tipinde tek başına [Required] işe yaramaz - alanı [Required] ile nullable yapın, required olarak bildirin ya da [JsonRequired] ekleyin.

public class CreateOrderRequest
{
public int Quantity { get; set; } // missing field arrives as 0
public bool GiftWrap { get; set; }
}
public class CreateOrderRequest
{
[Required]
public int? Quantity { get; set; }
public required bool GiftWrap { get; init; }
}