Visual Studio中的.cshtml文件如下所示:
注意createTabStrip
如何崩溃,但createTeachersTab
不能崩溃。这是为什么?
@
个符号,createTeachersTab
能够崩溃。
答案 0 :(得分:6)
扩展我的评论。
您通常不希望在Razor视图中定义函数。相反,定义它们并从外部JavaScript文件导入它们。如果你需要在JavaScript中使用C#中的信息,你可以在Razor partial中用JavaScript创建一个全局配置对象,然后渲染它。
<强> function_lib.js 强>
function createTeachersTab() {
...
read: {
url: config.teachers.newTabUrl
}
...
}
<强>查看/共享/ _JavaScriptConfig.cshtml 强>
这将在HTML文档的<head>
中呈现为部分。
<script type="text/javascript">
var config = {
teachers: {
newTabURL: '@Url.Action("Teachers", "Users")'
}
};
</script>
然后,在JavaScript的其他任何位置,您都可以通过全局config
JavaScript变量引用这些设置。
config.teachers.newTabUrl
编辑:我也完全认识到这并没有解决Visual Studio中的代码崩溃问题,这似乎是他们最终的解析错误。真正的解决方案是在Razor视图中定义JavaScript函数&#34;因为这被认为是不好的做法。
答案 1 :(得分:1)
您还可以突出显示该块并按ctrl + m,ctrl + h折叠该块