在下面的 MVC 视图代码中,isLoggedInDb 带有绿色下划线,工具提示显示Expected ';' . 显然有一个;,而且很难用谷歌搜索; 在它的上面。我已经看到其他人在以这种方式创建 JavaScript 服务器端时遇到问题,所以这可能不是最佳实践。应该忽略这一点,还是 Intellisense 有正当理由抱怨?
@* SHTML Code Above *@
<script type="text/javascript">
    @{  
        string isLoggedInDb;
        if(Session["isLoggedInDb"] != null)
        {
            if(Session["isLoggedInDb"].ToString() == "1") 
            {
                isLoggedInDb = "1";
            }
            else
            {
                isLoggedInDb = "0";
            }
        }
    }
    var dblogin=@(isLoggedInDb);
    @*....etc*@
    }
编辑:
我突然想到,以编程方式构建 JavaScript 可能不是最好的主意,因为将 JavaScript 保存在通常被缓存的单独文件中可能被认为是最佳实践。我认为我应该在 JavaScript 读取的 HTML 中编写隐藏变量。也许有人可以证实这一点。