2012-06-06 10 views
5

Ich möchte einige Controller-Aktionen Unit-Test und schließlich testen, dass Validierung Attribute und Action-Response-Filter ordnungsgemäß funktionieren. So etwas in ASP.NET MVC zu tun war einfach mit mvccontrib; Mit der Web-API scheint der HttpContext jedoch etwas anders zu sein.ASP .NET Web API-Controller testen

Wie gehe ich über HttpContext für einen Web-API-Controller spotten, so dass ich Modellbindung und dergleichen testen kann?

Antwort

2

Sie sollten HttpContext nicht in einer Web-API benötigen. Alles, was Sie brauchen, sollte in der HttpRequestMessage und seiner Properties-Auflistung sein.

+0

Was ist mit Anwendungseinstellungen in 'HttpContext.Current.Application'? –

+0

@ Scotty.NET Verwenden Sie request.Properties, um den Status zu speichern, den Sie speichern möchten. Wenn Sie dort einen globalen Status benötigen, erstellen Sie einen Nachrichtenhandler, um den Status zu speichern und ihn bei jeder Anforderung zur Eigenschaftensammlung hinzuzufügen. –

+0

Sie haben bestätigt, was ich dachte, wäre der Fall. Dank dafür. –