使用asp.net mvc再造一个digg 第一部分
using (mocks.Record()) 16. { 17. httpContext = GetHttpContext(mocks, "~/Default.aspx"); 18. } 19. 20. using (mocks.Playback()) 21. { 22. RouteData routeData = routes.GetRouteData(httpContext); 23. 24. Assert.IsNotNull(routeData); 25. Assert.AreEqual ("Story", routeData.Values["Controller"]); 26. Assert.AreEqual("Category", routeData.Values["action"]); 27. } 28. } 29. 30. [TestMethod] 31. public void VerifyAllCategory() 32. { 33. IHttpContext httpContext; 34. 35. using (mocks.Record()) 36. { 37. httpContext = GetHttpContext(mocks, "~/Story/Category/20"); 38. } 39. 40. using (mocks.Playback()) 41. { 42. RouteData routeData = routes.GetRouteData(httpContext); 43. 44. Assert.IsNotNull(routeData); 45. Assert.AreEqual("Story", routeData.Values ["Controller"]); 46. Assert.AreEqual("Category", routeData.Values["action"]); 47. Assert.IsNull(routeData.Values["name"]); 48. Assert.AreEqual("20", routeData.Values["page"]); 49. } 50. } 实现UserController 前面我们定义了UserController的签名,现在我们就来具体实现他。UserController使用了ASP.NET Membership provider来实现登录、注 册和其他一些功能。这个controller和其他controller唯一的区别就是这个controller里所以方法都返回一个JSON数据而不是HTML输出。客户 端通过ASP.NET AJAX Framework来调用这个controller里的方法。下面这些代码是Login方法的实现: 如你所见,我们在方法开头就创建了一个JsonResult对象。JsonResult是一个用来反馈controller行为是否成功的简单类,他只有两个属性 isSuccessful和errorMessage, errorMessage。如果操作不成功,就把失败原因存在errorMessage里。在结尾处,我们把结果当作一个名为 Json的共享视图里的view data返回。因为是一个共享视图,所以他可以被UserController和StoryController使用。我们把他放在了View |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |