2012-07-31 14 views
6

utilizzando il seguente in Moqcome vorrei prendere in giro una querystring

public Mock<HttpRequestBase> Request { get; set; } 

come posso prendere in giro questa Richiedi [....]

(in controller) 
var modelFromPost = Request["mymodel"] 

ecco quello che ho finora

public class ContextMocks 
{ 

    public Mock<HttpContextBase> HttpContext { get; set; } 
    public Mock<HttpRequestBase> Request { get; set; } 
    public RouteData RouteData { get; set; } 


    public ContextMocks(Controller controller) 
    { 
     HttpContext = new Mock<HttpContextBase>(); 
     HttpContext.Setup(x => x.Request).Returns(Request.Object); 

    } 

} 

evviva!

risposta

5

È possibile prendere in giro gli indicizzatori con il metodo SetupGet:

ContextMocks.Request.SetupGet(r => r["mymodel"]).Returns(myModel); 
+0

grazie - che ha fatto il trucco – MikeW

+0

ho aggiunto un'altra domanda relativa qui se avete tempo http://stackoverflow.com/questions/11751651/how- do-i-mock-out-the-mvcfutures-of-my-Controller-test – MikeW

Problemi correlati