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

  • Canal de arkyoru

    Canal de ark

    18 Ocak 2007
  • echifitness

    echifitness

    9 Kasım 2008
  • placeboing

    placeboing

    7 Mart 2006