Asp.net mvc 如何在ASP.NET MVC中使用实体框架、存储库模式和在给定sp上创建基于角色的访问来使用存储过程
如何使用实体框架、存储库模式在ASP.NET MVC中使用存储过程,并在给定sp上创建角色库访问。我必须使用下面的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
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 <> '')
您是否先使用数据库?还是类优先?我们使用的实体框架代码优先和存储库模式。