Сегмент Global Code в MVC View дает ошибку .... "Выражение ожидается". - PullRequest
0 голосов
/ 07 сентября 2011

У меня есть представление, в котором у меня есть блок кода, в котором я устанавливаю некоторые переменные, а затем использую эти переменные для отображения или скрытия некоторых областей ...

Когда я создаю этот сайт. Ошибка компиляции появляется в строке @( с указанием Syntax Error, а еще одна с указанием Expression Expected. Кто-нибудь может подсказать мне, что я здесь делаю неправильно ...

@ModelType arwedes.WebShop.Model.Gruppe1Liste
@Code

End Code
@(
    Dim lblInfoTitleText As String = String.Empty
    Dim lblInfoText As String = String.Empty
    Dim panelInfoVisibility As Boolean = False
    Select Case WebSession.Menu
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Home
            lblInfoTitleText = arwedes.WebShop.Model.Text.GetText("Info.HomeTitle", AppSession.Language)
            lblInfoText = arwedes.WebShop.Model.Text.GetText("Info.Home", AppSession.Language)
            panelInfoVisibility = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Reservieren
            lblInfoTitleText = arwedes.WebShop.Model.Text.GetText("Info.ReservierenTitle", AppSession.Language)
            lblInfoText = arwedes.WebShop.Model.Text.GetText("Info.Reservieren", AppSession.Language)
            panelInfoVisibility = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Kaufen
            lblInfoTitleText = arwedes.WebShop.Model.Text.GetText("Info.KaufenTitle", AppSession.Language)
            lblInfoText = arwedes.WebShop.Model.Text.GetText("Info.Kaufen", AppSession.Language)
            panelInfoVisibility = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Verkaufen
            lblInfoTitleText = arwedes.WebShop.Model.Text.GetText("Info.VerkaufenTitle", AppSession.Language)
            lblInfoText = arwedes.WebShop.Model.Text.GetText("Info.Verkaufen", AppSession.Language)
            panelInfoVisibility = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Member
            If Request.RawUrl.Contains("login") Then
                lblInfoTitleText = arwedes.WebShop.Model.Text.GetText("Info.MemberTitle", AppSession.Language)
                lblInfoText = arwedes.WebShop.Model.Text.GetText("Info.Member", AppSession.Language)
                panelInfoVisibility = True
            End If
    End Select

    Dim bShowCatMenu As Boolean = False
    Select Case WebSession.Menu
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Home
            bShowCatMenu = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Kaufen
            bShowCatMenu = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Reservieren
            bShowCatMenu = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Member
            If Request.ServerVariables("SCRIPT_NAME") = "/membermenu.aspx" Or Request.ServerVariables("SCRIPT_NAME") = "/welcome.aspx" Then
                bShowCatMenu = True
            End If
    End Select
)
@If panelInfoVisibility Then
    @: <div id="panelInfo">
    @: <p style="text-align: center; font-size: 8pt"> <b> <span id="lblInfoTitle">@lblInfoTitleText</span>
    @: </b><br /> <span id="lblInfo">@lblInfoText</span> </p> </div> 
End If

Ответы [ 2 ]

1 голос
/ 07 сентября 2011

вместо @( ...) поместите свой код в блок @Code ... End Code.

0 голосов
/ 07 сентября 2011

Попробуйте так:

@ModelType arwedes.WebShop.Model.Gruppe1Liste
@Code
    Dim lblInfoTitleText As String = String.Empty
    Dim lblInfoText As String = String.Empty
    Dim panelInfoVisibility As Boolean = False
    Select Case WebSession.Menu
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Home
            lblInfoTitleText = arwedes.WebShop.Model.Text.GetText("Info.HomeTitle", AppSession.Language)
            lblInfoText = arwedes.WebShop.Model.Text.GetText("Info.Home", AppSession.Language)
            panelInfoVisibility = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Reservieren
            lblInfoTitleText = arwedes.WebShop.Model.Text.GetText("Info.ReservierenTitle", AppSession.Language)
            lblInfoText = arwedes.WebShop.Model.Text.GetText("Info.Reservieren", AppSession.Language)
            panelInfoVisibility = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Kaufen
            lblInfoTitleText = arwedes.WebShop.Model.Text.GetText("Info.KaufenTitle", AppSession.Language)
            lblInfoText = arwedes.WebShop.Model.Text.GetText("Info.Kaufen", AppSession.Language)
            panelInfoVisibility = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Verkaufen
            lblInfoTitleText = arwedes.WebShop.Model.Text.GetText("Info.VerkaufenTitle", AppSession.Language)
            lblInfoText = arwedes.WebShop.Model.Text.GetText("Info.Verkaufen", AppSession.Language)
            panelInfoVisibility = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Member
            If Request.RawUrl.Contains("login") Then
                lblInfoTitleText = arwedes.WebShop.Model.Text.GetText("Info.MemberTitle", AppSession.Language)
                lblInfoText = arwedes.WebShop.Model.Text.GetText("Info.Member", AppSession.Language)
                panelInfoVisibility = True
            End If
    End Select

    Dim bShowCatMenu As Boolean = False
    Select Case WebSession.Menu
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Home
            bShowCatMenu = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Kaufen
            bShowCatMenu = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Reservieren
            bShowCatMenu = True
        Case arwedes.WebShop.Web.Navigation.MenuEnum.Member
            If Request.ServerVariables("SCRIPT_NAME") = "/membermenu.aspx" Or Request.ServerVariables("SCRIPT_NAME") = "/welcome.aspx" Then
                bShowCatMenu = True
            End If
    End Select
End Code
@If panelInfoVisibility Then
    @: <div id="panelInfo">
    @: <p style="text-align: center; font-size: 8pt"> <b> <span id="lblInfoTitle">@lblInfoTitleText</span>
    @: </b><br /> <span id="lblInfo">@lblInfoText</span> </p> </div> 
End If

Как говорится, код, подобный тому, который вы написали, не принадлежит представлению.Таким образом, реальным решением вашей проблемы было бы ее использование (помощник, модель представления?).

Можете ли вы когда-нибудь представить свои взгляды веб-дизайнеру?Он будет кричать в отчаянии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...