SORU
3 HAZİRAN 2012, Pazar


ASP.NET WebApi birim İsteği ile test.CreateResponse

Benim ApiController için bazı birim testleri yazmak için çalışıyorum ve bazı sorunlar ile karşı karşıya. İyi eğlenceler bir İstek yöntemi denir.CreateResponse yanıt üreten ile bir çok yardımcı olur.

public HttpResponseMessage Post(Product product)
{
  var createdProduct = repo.Add(product);
  return this.Request.CreateResponse(HttpStatusCode.Created, createdProduct);
}

Orada kısmi alay kullanarak veya doğrudan kullanmadan alay CreateResponse için herhangi bir yolu var mı "yeni HttpResponseMessage(...)"?

CEVAP
8 HAZİRAN 2012, Cuma


Bunu çözmenin başka bir yolu şudur:

controller.Request = new HttpRequestMessage();
controller.Request.Properties.Add(HttpPropertyKeys.HttpConfigurationKey, new HttpConfiguration());

Eğer 5.0, webapi yükseltme yapıyorsanız bunu değiştirmek için ihtiyacınız olacak:

controller.Request = new HttpRequestMessage();
controller.Request.SetConfiguration(new HttpConfiguration());

Bunu yapmak için ihtiyacın sebebi Request Request uzatma yöntemleri işe yaramaz denetleyicisi başkaca kalabalık var çünkü. Ayrıca İstek yoksa yönlendirme HttpConfiguration bir set olması ve boru hattının diğer parçaları düzgün olmaz.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bigapplemagic

    Bigapplemagi

    22 EYLÜL 2011
  • Photoshop Tutorials

    Photoshop Tu

    22 HAZİRAN 2011
  • TotalxLuna

    TotalxLuna

    27 Kasım 2011