从后端获取C#const并在JS文件中使用它?

时间:2018-08-31 06:58:13

标签: javascript jquery c#-3.0

我有一个棘手的问题。

是否可以采用C#const并在Jquery的.JS脚本中使用它?

这是const的外观:

 public class UserRoles
 {
    public const string Read = "Read";
    public const string ReadWrite = "ReadWrite";
 }

2 个答案:

答案 0 :(得分:2)

这取决于您要使用这些值做什么。

您可以在UI初始化时将值放在js对象中(例如,Index.html中的window.YourAppName.Constants.Read =“ your C#constant”)。然后,一旦文档加载完成,就可以加载jquery脚本并利用常量值。

或者,如果您使用的是MVC,则可以在视图中使用标签,从而可以访问C#代码(viewmodel,enums等)。但是,如果您有很多js代码,那么最好将其保存在js文件中,在这种情况下,我会选择第一个选项。

答案 1 :(得分:1)

您不能在JavaScript文件中使用Razor,必须将变量传递到Viewbag /数据或模型中的Razor视图。

然后,您可以在共享布局中创建一个返回此变量的javascript函数,然后在.JS文件中,只要该变量在之后加载,就可以调用该函数以获取该变量。