SORU
8 AĞUSTOS 2011, PAZARTESİ


asp.net MVC3 razor: ekran actionlink kullanıcı rolüne göre

Yeni MVC İm. Bazı kullanıcılar için bazı actionlinks gizlemek mümkün olmak istiyorum. Bir "ben yalnızca yöneticiler görmek istiyorum" actionlink ve tıklatın. oluşturmak var ""Asp.net ama yok, jilet gibi.. çalışmıyor gibi görünüyor . mevcut loggedintemplate çeşit kullanmak istiyorum

En iyi yöntem olmayabilir bir if denetimi, geçerli kullanıcı ve onun rolü ile kod bloğu bir çeşit, ancak kullanabilirim?

benim dizin... cshtml

// want some adminauth attribute here...
@Html.ActionLink("Create New", "Create")

kumanda benim..

// GET: /Speaker/Create
[Authorize(Roles = "Administrators")]
public ActionResult Create()
{
    return View();
}

şerefe! :)

CEVAP
8 AĞUSTOS 2011, PAZARTESİ


Geçmişte sadece bir kriter bu gibi karşılandığında çıktı dönmek için yardımcı bir fonksiyon oluşturduk:

public static MvcHtmlString If(this MvcHtmlString value, bool evaluation)
{
     return evaluation ? value : MvcHtmlString.Empty;
}

bu kullanabilirsiniz:

@Html.ActionLink("Create New", "Create").If(User.IsInRole("Administrators"))

Bu şekilde, okunaklı ve kısa

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • dope2111

    dope2111

    29 HAZİRAN 2009
  • Menglong Tav

    Menglong Tav

    18 Temmuz 2010
  • michellefeng's channel

    michellefeng

    26 Kasım 2006