【发布时间】:2010-12-12 14:39:32
【问题描述】:
我正在构建一个允许用户注册的 ASP.NET MVC 3 站点。为此,我使用内置(静态)Membership 类;有人说它很臃肿,但它工作得很好而且很容易,所以你就在那里。
无论如何,我已经开始编写 AdminService 类来处理与用户帐户相关的功能,让我们假设它只有一种方法:
public class AdminService : IAdminService
{
public void DeleteUser(string username)
{
Membership.DeleteUser(username);
}
}
以两种方式错误地使用 Membership 类:它不能通过 IoC 注入,而且我发现为 IAdminService 编写规范(测试)越来越困难,因为我无法模拟 Membership 类。
有没有办法让 ASP.NET Membership 类对测试友好且对依赖注入友好,而无需自己动手?
在功能方面,Membership 类运行良好,更重要的是,它 现在可以工作,所以我真的不愿意开始编写自己的 MembershipProvider,因为它只会减慢我的速度。
【问题讨论】:
标签: asp.net-mvc unit-testing mocking asp.net-membership