Using Razor with Visual Basic: Listing 6.

Restricting functionality to authorized users.

@Code
  If User.IsInRole("admin") Then
    @Html.ActionLink("Create New", "Create")
  End If
End Code

@Code
  If User.IsInRole("admin") Then
    @Html.ActionLink("Email", "Email", New With {.id = currentItem.CustomerID})
    @Html.Raw(" | ")
    @Html.ActionLink("Delete", "Delete", New With {.id = currentItem.CustomerID}) 
    @Html.Raw(" | ")
  End If
  If User.IsInRole("clerical") OrElse User.IsInRole("admin") Then
    @Html.ActionLink("Edit", "Edit", New With {.id = currentItem.CustomerID}) 
    @Html.Raw(" | ")
  End If
  If User.IsInRole("employee") Then
    @Html.ActionLink("Details", "Details", New With {.id = currentItem.CustomerID})
  End If
End Code

Similarly, the link at the top of the customer list to create a new customer is restricted to admin users only by the following code:

@Code
  If User.IsInRole("admin") Then
    @Html.ActionLink("Create New", "Create")
  End If
End Code

About the Author

Joe Kunk is a Microsoft MVP in Visual Basic, three-time president of the Greater Lansing User Group for .NET, and developer for Dart Container Corporation of Mason, Michigan. He's been developing software for over 30 years and has worked in the education, government, financial and manufacturing industries. Kunk's co-authored the book "Professional DevExpress ASP.NET Controls" (Wrox Programmer to Programmer, 2009). He can be reached via email at [email protected].

comments powered by Disqus

Featured

  • VS Code 1.127 Further Integrates Advanced Browser-AI Tech

    Microsoft's July 1 Visual Studio Code update continues a recent push to make the editor's integrated browser a more capable development surface -- and a more useful tool for AI agents.

  • Support Vector Regression with SGD Training Using C#

    Support vector regression can predict numeric values effectively, and this article shows how to implement and train a kernel SVR model in C# using stochastic sub-gradient descent.

  • New GitHub Switch Limits Repo Issue Creation to Collaborators Only

    After publicly touting pull request limits as a way to cut maintainer noise, GitHub is taking the same idea further with a new setting that lets repository admins restrict issue creation to collaborators only.

  • Uno Platform Helps Ship First Stable SkiaSharp 4.0 Release for 2D .NET Graphics

    SkiaSharp 4.148.0 is the first stable v4 release, bringing a newer Skia engine, API cleanup, performance work and a Microsoft-Uno co-maintenance model.

Subscribe on YouTube