2017-06-17 2 views
-1

Ich verwende SQL Server und eine C# Webforms-Anwendung.Wie werden Namen von Seiten innerhalb der Tabelle für jeden Benutzertyp angegeben, auf den innerhalb der Anwendung zugegriffen werden kann?

In einer Tabelle möchte ich Benutzergruppe und vor jeder Gruppe Namen von zugänglichen Seiten angeben.

So suche ich innerhalb der Web-Anwendung innerhalb der Masterpage mit gespeicherten Verfahren, wenn jedes eingegebene Webformular, wenn Benutzer darauf zugreifen können oder nicht.

+0

Das ist normalerweise keine gute Idee. Was passiert, wenn eine Seite umbenannt oder verschoben wird? Verwenden Sie stattdessen Benutzerrollen, um den Zugriff auf bestimmte Speicherorte einzuschränken. Hier sind einige Links, um weiter zu lesen. MembershipProvider https://msdn.microsoft.com/en-us/library/yh26yfzy.aspx und standortbasierte Zugriffsregeln https://weblogs.asp.net/gurusarkar/setting-authorization-rules-for-a-particular-page -oder-folder-in-web-config – bic

Antwort

0

Sie können eine Tabelle erstellen, etwa so:

create table UserGroupToPage 
(
    Id int identity(1, 1) primary key, 
    PageName varchar(100) not null, 
    UserGroupId int not null foreign key references UserGroup (Id) 
) 

Oder, wenn Sie Ihre Seitennamen in einer Tabelle haben:

create table UserGroupToPage 
(
    Id int identity(1, 1) primary key, 
    PageId int not null foreign key references Pages (Id), 
    UserGroupId int not null foreign key references UserGroup (Id) 
) 

Aber - wie bic sagte - Sie Seite aktualisieren müssten Namen, wenn Sie sie in Ihrer App ändern.

+0

Beachten Sie außerdem, dass Sie den vollständigen relativen Pfad in der UserGroupToPage-Tabelle und nicht nur dem PageName selbst speichern müssen. – bic

Verwandte Themen