Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 如何在ASP.NET MVC中使用实体框架、存储库模式和在给定sp上创建基于角色的访问来使用存储过程_Asp.net Mvc_Asp.net Identity - Fatal编程技术网

Asp.net mvc 如何在ASP.NET MVC中使用实体框架、存储库模式和在给定sp上创建基于角色的访问来使用存储过程

Asp.net mvc 如何在ASP.NET MVC中使用实体框架、存储库模式和在给定sp上创建基于角色的访问来使用存储过程,asp.net-mvc,asp.net-identity,Asp.net Mvc,Asp.net Identity,如何使用实体框架、存储库模式在ASP.NET MVC中使用存储过程,并在给定sp上创建角色库访问。我必须使用下面的sp创建角色库访问。我是新手,我不知道如何创建和使用此存储过程。谢谢 CREATE PROCEDURE [dbo].[sp_AccountAccess] @UserName NVARCHAR(255), @Password NVARCHAR(255) AS SELECT CASE WHEN ( SELECT UserType FROM (SE

如何使用实体框架、存储库模式在ASP.NET MVC中使用存储过程,并在给定sp上创建角色库访问。我必须使用下面的sp创建角色库访问。我是新手,我不知道如何创建和使用此存储过程。谢谢

  CREATE PROCEDURE [dbo].[sp_AccountAccess] 
    @UserName NVARCHAR(255), @Password NVARCHAR(255)

    AS

    SELECT CASE WHEN (
SELECT UserType
    FROM (SELECT Username, Password, 'Admin' UserType 
            FROM AccountAccess AC
            WHERE EXISTS (SELECT * FROM v_Admins AD WHERE AD.Email = AC.Email)
            UNION ALL

            --Sales by Department
            SELECT Username, Password, 'Department' UserType
            FROM AccountAccess AC
            WHERE SalesView <> ''
            AND  AC.Department <> SalesView
            AND NOT EXISTS (SELECT * FROM v_AllUser AD WHERE AD.Email = AC.Email)
            AND Email NOT LIKE '%process%'
            AND Email <> ''
            AND Password <> ''
            UNION ALL

            --sales by sales
            SELECT Username, Password, 'sales' UserType
            FROM AccountAccess AC
            WHERE SalesView = ''
            AND NOT EXISTS (SELECT * FROM v_AllUser AD WHERE AD.Email = AC.Email)
            AND Email NOT LIKE '%process%'
            AND Email <> ''
            AND Password <> ''
            UNION ALL

            --provision 
            SELECT Username, Password, 'provision' UserType
            FROM AccountAccess AC
            WHERE AC.provision <> ''
            AND (ProvisionView = '' OR AC.provision = ProvisionView)
            AND NOT EXISTS (SELECT * FROM v_AllUser AD WHERE AD.Email = AC.Email)
            AND Email NOT LIKE '%process%'
            AND Email <> ''
            AND Password <> '') T
    WHERE Username = @UserName COLLATE Latin1_General_CS_AS
    AND Password = @Password COLLATE Latin1_General_CS_AS
    GROUP BY UserType) IS NULL THEN 'FAILURE' Else 'SUCCESS' END AS LogonGranted,
    (SELECT UserType
    SELECT UserType
    FROM (SELECT Username, Password, 'Admin' UserType 
            FROM AccountAccess AC
            WHERE EXISTS (SELECT * FROM v_Admins AD WHERE AD.Email = AC.Email)
            UNION ALL

            --Sales by Department
            SELECT Username, Password, 'Department' UserType
            FROM AccountAccess AC
            WHERE SalesView <> ''
            AND  AC.Department <> SalesView
            AND NOT EXISTS (SELECT * FROM v_AllUser AD WHERE AD.Email = AC.Email)
            AND Email NOT LIKE '%process%'
            AND Email <> ''
            AND Password <> ''
            UNION ALL

            --sales by sales
            SELECT Username, Password, 'sales' UserType
            FROM AccountAccess AC
            WHERE SalesView = ''
            AND NOT EXISTS (SELECT * FROM v_AllUser AD WHERE AD.Email = AC.Email)
            AND Email NOT LIKE '%process%'
            AND Email <> ''
            AND Password <> ''
            UNION ALL

            --provision 
            SELECT Username, Password, 'provision' UserType
            FROM AccountAccess AC
            WHERE AC.provision <> ''
            AND (ProvisionView = '' OR AC.provision = ProvisionView)
            AND NOT EXISTS (SELECT * FROM v_AllUser AD WHERE AD.Email = AC.Email)
            AND Email NOT LIKE '%process%'
            AND Email <> ''
            AND Password <> '')

您是否先使用数据库?还是类优先?我们使用的实体框架代码优先和存储库模式。