0
我已經使用Dnoa實現了一個OpenID控制器。我正在使用RP MVC模板中的dnoa方法,該方法從控制器操作中返回IAuthenticationRequest.RedirectingResponse.AsActionResult()。但是,我現在發現使用Moq很難測試控制器,因爲這種方法。我應該在MVC中使用DotNetOpenAuth OpenIdRelyingParty RedirectingResponse.AsActionResult或RedirectToProvider嗎?
我改變了控制器,而是調用IAuthenticationRequest.RedirectToProvider()並返回null爲ActionResult,這似乎有相同的效果。 RedirectToProvider應該更容易模擬,但是在這種情況下從控制器返回null是否合適?
Moq在RedirectingResponse.AsActionResult()方面遇到了問題,但沒有使用RedirectToProvider()方法。在MVC中使用RedirectToProvider會有什麼問題,並返回一個新的EmptyResult? – danludwig 2010-09-26 15:34:18
我不確定會出現什麼問題。但MVC的精神是返回結果而不是調用RedirectToProvider,它調用ASP.NET的Response.End()方法,該方法通常會拋出ThreadInterruptedException異常。 – 2010-09-29 03:29:01