5
我有一個視圖&控制器,允許用戶上傳文件到服務器。這是在視圖中使用input type='file'
並在控制器中通過獲取值Request.Files
(HttpRequestBase
,返回HttpFileCollectionWrapper
)完成的。犀牛嘲笑:嘲諷HttpRequestBase.Files
我有困難嘲笑這使用Rhino Mocks。
HttpContextBase mockHttpContext = MockRepository.GenerateMock<HttpContextBase>();
HttpRequestBase mockRequest = MockRepository.GenerateMock<HttpRequestBase>();
mockHttpContext.Stub(x => x.Request).Return(mockRequest);
mockRequest.Stub(x => x.HttpMethod).Return("GET");
// Next line fails - throws MissingMethodException
// (Can't find a constructor with matching arguments)
HttpFileCollectionWrapper files =
MockRepository.GenerateMock<HttpFileCollectionWrapper>();
files.Stub(x => x.Count).Return(1);
mockRequest.Stub(x => x.Files).Return(files);
爲HttpFileCollectionWrapper
的構造需要HttpFileCollection
,但是這有一個internal
構造。
任何人都可以建議如何讓這種方法,或它的變種,工作?