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
构造。
任何人都可以建议如何让这种方法,或它的变种,工作?