@if内的@using(Html.BeginForm)

时间:2019-01-20 09:31:13

标签: asp.net asp.net-mvc razor

我需要使用基于视图的授权,当我执行以下操作时,在应用程序中出现服务器错误

        @if (User.Identity.IsAuthenticated)
    {
        if (User.IsInRole("Admin"))
        {

            <h4>Create a new document</h4>
            @using(Html.BeginForm("Create", "Document", null, FormMethod.Post, new { enctype = "multipart/form-data" }))
            {
                @Html.AntiForgeryToken()

                <span>SOME HTML COD</span>
            }
        }
        else
        { <span>Vous devez être administrateur pour accéder à cette section</span>}
    }
    else
    {<span>Vous devez être connecté pour accéder à cette section</span>}

可能是解决方案还是问题?

THE ERROR CAPTURE

1 个答案:

答案 0 :(得分:0)

从(Html.BeginForm ...中删除@ ...不需要@,仅在div标签中有任何条件时才需要@

    @if (User.Identity.IsAuthenticated)
{
    if (User.IsInRole("Admin"))
    {

        <h4>Create a new document</h4>
            using (Html.BeginForm("Create", "Document", null, FormMethod.Post, new { enctype = "multipart/form-data" }))
            {
                @Html.AntiForgeryToken()

                <span>SOME HTML COD</span>
            }
    }
    else
    { <span>Vous devez être administrateur pour accéder à cette section</span>}
}
else
{<span>Vous devez être connecté pour accéder à cette section</span>}