реализовать пользовательское представление на основе авторизации ядра asp.net - PullRequest
1 голос
/ 11 июля 2019

У меня есть специальная система входа в систему, основанная на файлах cookie, в которой не используется встроенный менеджер пользователей в базовой структуре asp.net. Как я могу создать авторизацию на основе представления есть ли что-то похожее на System.Web.UI.Control в ядре asp.net?

protected override void OnLoadComplete(EventArgs e)
{
    if (Role == 0)
        Response.Redirect(System.Configuration.ConfigurationManager.AppSettings["unauthorized"]);
    System.Data.Common.DbDataReader dr = Yetki.PageControlsbyUser(pageUrl, ProjeKod, Role);
    try
    {
        while (dr.Read())
        {
            foreach (System.Web.UI.Control cList in Page.Controls)
            {
                System.Web.UI.Control ctrl = FindRecursive(cList, dr["ControlAd"].ToString());
                if (ctrl != null)
                {
                    int dRole = Convert.ToInt32(dr["roleId"]);

                    switch (role)
                    {
                        case 1:
                            ctrl.Visible = false;
                            break;
                        case 2:
                            if (!(dRole > 2)) { ctrl.Visible = true; } else ctrl.Visible = false;
                            break;
                        case 3:
                            ctrl.Visible = true;
                            break;
                    }
                }
            }
        }
    }
    finally { dr.Close(); }
    base.OnInitComplete(e);
}

Я думаю создать интерфейс, который проверяет достаточное количество пользователей для внедрения в представления, но я не уверен, что это эффективное решение

...