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

  • 07cadikiz07

    07cadikiz07

    17 EKİM 2007
  • Justin Case

    Justin Case

    3 EKİM 2011
  • SuicideSheeep

    SuicideSheee

    8 Ocak 2012