2010-11-13 3 views
2

En Fredrik's Blog post, il a un exemple de C# instruction ifASP.NET MVC3 - Si états dans VB

@if (WebSecurity.IsAuthenticated) { 
    <li><a href="/user/login">Log in</a></li> 
} else { 
    <li><a href="/user/logout">Log out</a></li> 
} 

Mais en VB, je ne peux pas sembler comprendre comment faire la même chose

@If (HttpContext.Current.User.Identity.IsAuthenticated) Then 
<div id="dialog-confirm" title="Log Out"> 
    <div class="alert" title="Alert"> 
    </div> 
    Are you sure?</div> 
End If 

Ce spectacle montre que mon balisage HTML interne est erroné.

Fondamentalement, ce qui suit est valable

@If (HttpContext.Current.User.Identity.IsAuthenticated) Then 

End If 

, mais tout ce qui va à l'intérieur de l'instruction if est considéré comme « code » et non « balisage ». Ce dont j'ai besoin, c'est d'être en mesure d'y ajouter des balisages.

Est-ce que quelqu'un sait comment faire une bonne instruction if dans Razor VB?

+1

Cette réponse à une question connexe pourrait aider: http://stackoverflow.com/questions/4169340/razor-view-engine-quirks-in-vb-net/4171198#4171198 – Lucas

+0

Vous semblez avoir raison. –

Répondre

9

@Lucas m'a orienté dans la bonne direction. Cela semble être valide

@If (HttpContext.Current.User.Identity.IsAuthenticated) Then 
@<div id="dialog-confirm" title="Log Out"> 
    <div class="alert" title="Alert"></div> 
    <div>Are you sure?</div> 
</div> 
End If