SORU
27 Temmuz 2012, Cuma


ASP.NET Web API ModelState Doğrulama işlemek

ASP.NET Web API ile model doğrulama elde edebilirim nasıl olduğunu merak ettim. Benim model gibi çok var:

public class Enquiry
{
    [Key]
    public int EnquiryId { get; set; }
    [Required]
    public DateTime EnquiryDate { get; set; }
    [Required]
    public string CustomerAccountNumber { get; set; }
    [Required]
    public string ContactName { get; set; }
}

Ben o zaman benim API Denetleyicisi Sonrası bir eylem var:

public void Post(Enquiry enquiry)
{
    enquiry.EnquiryDate = DateTime.Now;
    context.DaybookEnquiries.Add(enquiry);
    context.SaveChanges();
}

Nasıl if(ModelState.IsValid) ekleme ve kullanıcı için aşağı geçmek hata iletisini işlemek sonra mı?

CEVAP
30 Temmuz 2012, PAZARTESİ


Endişe ayrılması için, model doğrulama için eylem filtre kullanmanızı öneririm, apı denetleyicisi doğrulama yapmak için ne kadar dikkate gerek yok:

using System.Net;
using System.Net.Http;
using System.Web.Http.Controllers;
using System.Web.Http.Filters;

namespace System.Web.Http.Filters
{
    public class ValidationActionFilter : ActionFilterAttribute
    {
        public override void OnActionExecuting(HttpActionContext actionContext)
        {
            var modelState = actionContext.ModelState;

            if (!modelState.IsValid)
                actionContext.Response = actionContext.Request
                     .CreateErrorResponse(HttpStatusCode.BadRequest, modelState);
        }
    }
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AndroidSale

    AndroidSale

    17 NİSAN 2011
  • Ayite Atiwoto (superjiffrey)

    Ayite Atiwot

    29 EYLÜL 2010
  • Mary Jane Tauyan

    Mary Jane Ta

    20 AĞUSTOS 2009