Tôi có giải pháp với các dự án khác nhau trong đó, Một dự án là dự án MVC 3 và dự án kia là dự án thử nghiệm.Không thể tải tệp hoặc lắp ráp 'System.Web.Mvc
Từ dự án thử nghiệm, tôi đang cố gắng kiểm tra hành vi của trình điều khiển của mình. Nhưng khi tôi chạy thử nghiệm, hệ thống sẽ báo lỗi cho tôi biết điều này:
System.IO.FileNotFoundException: Không thể tải tệp hoặc lắp ráp 'System.Web.Mvc, Version = 1.0.0.0, Culture = trung lập, PublicKeyToken = 31bf3856ad364e35 'hoặc một trong các phụ thuộc của nó. Hệ thống không thể tìm thấy các tập tin được chỉ định.
WRN: hội ràng buộc khai thác gỗ được bật OFF.To cho phép lắp ráp bind thất bại đăng nhập, thiết lập giá trị registry[HKLM\Software\Microsoft\Fusion!EnableLog]
(DWORD) để 1.
Mã từ thử nghiệm hệ điều hành sau:
[TestMethod]
public void TestMethod()
{
var myService = new Mock<IMyService>();
myService.Setup(a => a.ReadAuthorizationRequest())
.Returns<EndUserAuthorizationRequest>(null);
int error = 0;
var controller = new myController(myService.Object);
try
{
var actionResult = controller.Authorize();
}
catch (HttpException exception)
{
error = exception.GetHttpCode();
}
Assert.AreEqual(403, error);
}
bộ điều khiển:
public class myController: Controller
{
private readonly IMyService _service;
public OAuthController(IMyService service)
{
_service = service;
}
[Authorize, AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)]
public ActionResult Authorize()
{
ClientApplication requestingClient;
var request = _service.ReadAuthorizationRequest();
if (request == null)
{
throw new HttpException((int) HttpStatusCode.BadRequest,
"Missing authorization request.");
}
}
}
Như bạn có thể thấy, bất cứ khi nào dịch vụ không đọc yêu cầu, bộ điều khiển phải ném một httpException với httpStatusCode 403.
Điều gì là sai với điều này. Cảm ơn bạn trước.