LoginView Nesnesi Kullanımı

LoginView Nesnesi

Web sitemizde kullanıcı hesapları ve/veya roller kullanıyorsak farklı kullanıcılara farklı içerikler göstermek sıkça yapacağımız bir iştir.

Mesela giriş yapmamış durumdaki kullanıcılar ile (anonim) oturum açmış olanlara farklı içerik gösterebiliriz.

Ayrıca kullanıcıların rolüne göre de farklı içerikler görmelerini sağlayabiliriz.

LoginView nesnesi bu işi son derece kolaylaştıran bir Asp.Net kontrolüdür. LoginView nesnesi başlıca 3 kısma ayrılır:

AnonymousTemplate: Anonim yani oturum açmamış kullanıcılara gösterilecek içerik buraya yazılır.

LoggedInTemplate: Oturum açan kullanıcılara buradaki içerik gösterilir.

RoleGroups: Rollere özgü içerik oluşturmak için bu kısım kullanılır. Bu kısmın içine istenen her rol için bir asp:RoleGroup etiketi açılır, Roles parametresi ile rolün adı belirtilir ve onun da içine ContentTemplate açılarak içerik yazılır.

Örneği inceleyelim:

<asp:LoginView ID="LoginView1" runat="server">
 
    <AnonymousTemplate>
          <p>Lütfen Giriş Yapınız</p>
    </AnonymousTemplate>
 
    <LoggedInTemplate>
           <p>Kullanıcı Girişi Yapıldı.</p>
    </LoggedInTemplate>
 
    <RoleGroups>
        <asp:RoleGroup Roles="yonetici">
            <ContentTemplate>
                 <p>Yönetici Girişi Yapıldı.</p>
            </ContentTemplate>
        </asp:RoleGroup>
 
        <asp:RoleGroup Roles="standart">
            <ContentTemplate>
                 <p>Standart Kullanıcı Girişi Yapıldı.</p>
            </ContentTemplate>
        </asp:RoleGroup>
    </RoleGroups>
</asp:LoginView>

Yukarıdaki örnekte oturum açmayan kullanıcılara AnonymousTemplate kısmı yani "Lütfen Giriş Yapınız" metni gösterilecektir. 

yonetici rolündeki kullanıcılar için farklı, standart rolündekiler için de farklı içerik gösterileceği <RoleGroups> etiketi altında belirtilmiştir.

Bu iki rolde olmayan kullanıcılar ise oturum açtıklarında LoggedInTemplate kısmını göreceklerdir.

Aşağıda ise Asp.Net Web Forms Site şablonunda masterpage sayfasında kullanılan örnek kodlar yer almaktadır.

<asp:LoginView runat="server" ViewStateMode="Disabled">
    <AnonymousTemplate>
        <ul class="nav navbar-nav navbar-right">
            <li><a runat="server" href="~/Account/Register">Kaydol</a></li>
            <li><a runat="server" href="~/Account/Login">Oturum aç</a></li>
        </ul>
    </AnonymousTemplate>
    <LoggedInTemplate>
        <ul class="nav navbar-nav navbar-right">
            <li><a runat="server" href="~/Account/Manage" title="Manage your account">Hello, <%: Context.User.Identity.GetUserName()  %>!</a></li>
            <li>
                <asp:LoginStatus runat="server" LogoutAction="Redirect" LogoutText="Log off" LogoutPageUrl="~/" OnLoggingOut="Unnamed_LoggingOut" />
            </li>
        </ul>
    </LoggedInTemplate>
</asp:LoginView>

Bu örnekte rollere özgü içerik belirtilmemiştir. Anonim kullanıcılara Kaydol ve Oturum Aç linkleri görünecektir.

Oturum açanlara ise kullanıcı adları şifre değiştirme sayfasına link verilmiş biçimde görünecektir. Ayrıca LoginStatus nesnesi sayesinde Çıkış butonu görünecek ve bu butona tıklandığında oturum kapatılacaktır.

 

asp.net kullanıcılara farklı içerik gösterme, giriş yapana farklı yapmayana farklı içerik gösterme, loginview nesnesi nasıl kullanılır, asp.net rollere farklı içerik gösterme, farklı roldeki kullanıcılara farklı içerik gösterme

KONU İLE İLGİLİ ÖRNEKLER

Bu konu ile ilgili örnek bulunmamaktadır.



YORUMLAR




1231  kez okundu.

Online Kullanıcı Sayısı 493