asp.net-mvc – 测试控制器使用User.Identity.Name的操作
发布时间:2020-05-24 23:10:46 所属栏目:asp.Net 来源:互联网
导读:我有一个操作,依靠User.Identity.Name获取当前用户的用户名,以获得他的订单列表: public ActionResult XLineas() { ViewData[Filtre] = _options.Filtre; ViewData[NomesPendents] = _options.NomesPendents; r
|
我有一个操作,依靠User.Identity.Name获取当前用户的用户名,以获得他的订单列表: public ActionResult XLineas()
{
ViewData["Filtre"] = _options.Filtre;
ViewData["NomesPendents"] = _options.NomesPendents;
return View(_repository.ObteLiniesPedido(User.Identity.Name,_options.Filtre,_options.NomesPendents));
}
现在我正试图为这个单元测试,但我困在如何提供一个Mock for User.Identity.Name。如果我运行我的测试,因为我有它(没有嘲笑为User …),我得到一个Null ..异常。 这是正确的方法吗?我认为我的Action代码不适合单元测试。 解决方法一个更好的方法是传递一个字符串参数userName(或者一个IPrincipal参数用户,如果你需要更多的信息,而不仅仅是名称)到ActionMethod,你在一个正常的请求使用ActionFilterAttribute“注入”。当你测试它,你只是提供自己的模拟对象,因为操作过滤器的代码不会运行(在大多数情况下 – 有办法,如果你特别想要…)Kazi Manzur Rashid在excellent blog post的第7点详细描述了这一点。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 什么是在asp.net中301重定向更推荐的方法?
- asp.net-mvc-4 – MVC 4.5 Web API路由无法正常工作?
- asp.net – App.Config和Web.Config之间的区别?
- asp.net – 连接池的最大和最小大小是多少ADO.Net在连接字符
- asp.net-mvc – 使用LINQ的多个或单个存储库
- asp.net-mvc – 如何仅刷新MVC 5中的部分索引页面?
- asp.net – 如何解决ASP .Net中的“这是一个无效的webresou
- asp.net-mvc – ASP.NET MVC – 接口类型上的自定义模型绑定
- 使用WCF进行ASP.NET聊天
- 在asp.net中引用jquery的最佳方法是什么?
推荐文章
站长推荐
- asp.net-mvc – 如何在使用RedirectToAction时设
- asp.net – 将自定义类添加到HttpContext
- asp.net-mvc – 使用RadioButtons的可空值布尔的
- asp.net-mvc – NLog在所有aspnet布局渲染器上抛
- asp.net-mvc – MVC DropDownList SelectedValue
- MVC学习二:基础语法
- 什么是部署ASP.Net Web应用程序的好方法?
- 如何在ASP.NET MVC中执行图像的Ajax / JQuery上载
- asp.net – Visual Studio 2008使用CodeBehind失
- .Net人的源代码控制
热点阅读
