Asp.net mvc 如何将asp.net MVC代码放入AngularJS文件中?

Asp.net mvc 如何将asp.net MVC代码放入AngularJS文件中?,asp.net-mvc,angularjs,Asp.net Mvc,Angularjs,从这个线程中,如何将类似的内容放入javascript文件中?这将是AngularJS控制器文件 从上面的示例中,可以在_Layout.cshtml脚本标记中定义的AngularJS控制器中使用以下内容: var firstname = "abc"; var username = "abcd"; location.href = '@Url.Action("Display", "Customer")?uname=' + firstname + '&name=' + username; 问

从这个线程中,如何将类似的内容放入javascript文件中?这将是AngularJS控制器文件

从上面的示例中,可以在_Layout.cshtml脚本标记中定义的AngularJS控制器中使用以下内容:

var firstname = "abc";
var username = "abcd";
location.href = '@Url.Action("Display", "Customer")?uname=' + firstname + '&name=' + username;

问题是asp.net MVC代码在放入javascript文件时不能很好地发挥作用。在_Layout.cshtml脚本标记中,它可以正常工作。但是不在JS文件中。

对于类似的场景,我执行以下操作

假设在我的Angular控制器中,我需要传递一个LoggedInUser值,我有一个服务器端助手类可用

在我看来,我是这样做的

<script type="text/javascript">
window.loggedInUser = '@MyHelper.LoggedInUser()';
</script>

window.loggedInUser='@MyHelper.loggedInUser()';

然后在我的Angular controller中访问这个全局变量。

由于ASP.Net MVC不能预处理JS文件,我认为这是不可能的。检查此项,以便发布Ok。我想这并没有什么帮助,因为我的大部分代码仍然在_Layout.cshtml中,而不是在任何JS文件中。最好将所有与Razor一起使用的JS都保存在_Layout.cshtml中,而不是将其强制放入JS文件中。你同意吗?不,我会把JS放在单独的JS文件中。