在没有DbContext的情况下自定义MVC ASP.NET Identity 2.0?

时间:2014-07-28 08:20:29

标签: asp.net asp.net-mvc wcf customization asp.net-identity

我有一个使用WCF服务的MVC 5.0应用程序,我在UI层没有DbContext。但是在ASP.NET Identity 2.0中我们必须有DbContext 是否可以自定义ASP.NET Identity 2.0以使用我们的一些服务而不是DbContext?

1 个答案:

答案 0 :(得分:1)

这样做的一种方法是遵循。

您必须创建customclass并定义保存WCF服务中数据的属性,并从IdentityDbContext<ApplicationUser>继承此类
从这里,您可以使用属性getter从WCF服务获取数据。
以下是示例代码。它没有经过测试,但可能对您有所帮助。

public class CustomClass : IdentityDbContext<ApplicationUser>
{
    private DbSet<Users1> wcfDataHolder;

    public DbSet<Users1> WcfDataHolder
    {
        get
        {
            // Write your WCF code here
            // wcfDataHolder = dataFromService
            return wcfDataHolder;
        }
        set { wcfDataHolder = value; }
    }
}


应注意两点。

  1. 我们是否应该在该类中使用静态创建函数来返回customClass的实例?
  2. 我们应该将任何数据库连接传递给基类吗?
  3. 的答案

    1. 根据我的小知识,你不应该使用create方法,因为据我所知,创建实例不是你的要求。
    2. 传递连接事物不会破坏某些东西,但这不是最佳解决方案,但不传递将使用web.config中的默认连接字符串。所以我建议不要通过它。