我在global.asax
中创建了这个单例private void SetAppConfig()
{
AppConfig.Instance.ClientId = 46;
AppConfig.Instance.Language = "en";
AppConfig.Instance.UserId = 7466897;
AppConfig.Instance.UserName = "RSTEST";
AppConfig.Instance.SessionId = "XXXX";
AppConfig.Instance.AppIds = new List<string>(new string[] { "element1", "element2", "element3" });
AppConfig.Instance.IsValidSession = true;
}
请注意 AppConfig.Instance.AppIds 属性,类型为List<string>
。
我需要将此单例对象设置为其AngularJS常量副本AppConfig,然后才能将其注入我的DataService和我的控制器
除了屏幕截图上的这个小东西外,一切都很完美:)
我需要将此 AppConfig.Instance.AppIds 属性的值转换为JavaScript数组格式。
必须在JS那边完成黄线。 而不是获得C#类型名称)
我忘记了,语法是什么?
谢谢!
cnorthfield,谢谢!
@ Html.Raw(Json.Encode(AppConfig.Instance.AppIds))
另一个有效的选择是,但你的更短))
@ Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(AppConfig.Instance.AppIds))
答案 0 :(得分:2)
使用Html.Raw
辅助方法并使用Json.Encode
方法对其进行JSON编码,如下所示:
@Html.Raw(Json.Encode(AppConfig.Instance.AppIds));
Json.Encode
方法首先将列表转换为JSON格式的字符串。Html.Raw
标记,您的JSON字符串不会被HTML编码,这意味着它可以让您使用JavaScript而无需进一步处理!