在ASP.NET MVC中公开资源字符串到JavaScript文件的最佳方式?
发布时间:2020-05-25 06:31:35 所属栏目:asp.Net 来源:互联网
导读:在Razor视图中使用资源字符串(.resx)很容易,但是如何在 JavaScript文件中执行?目前,我手动将字符串从Razor视图传递给JavaScript构造函数参数中的脚本,但我想要一种更自动的方法,所以我不必传递我需要的每个资源字符串. 我使用的解决方案是使用Razor创建一个j
|
在Razor视图中使用资源字符串(.resx)很容易,但是如何在 JavaScript文件中执行?目前,我手动将字符串从Razor视图传递给JavaScript构造函数参数中的脚本,但我想要一种更自动的方法,所以我不必传递我需要的每个资源字符串. 解决方法我使用的解决方案是使用Razor创建一个json对象,该对象包含给定应用程序区域的所有资源字符串,例如“Customers”.像这样:<script type="text/jscript">
@{
ResourceSet resourceSet = JsCustomersRes.ResourceManager.GetResourceSet(CultureInfo.CurrentUICulture,true,true);
var sbInitial = " var CustomersResourceObj = {";
var sb = new StringBuilder(sbInitial);
var resEnum = resourceSet.GetEnumerator();
while (resEnum.MoveNext())
{
if (sb.ToString() != sbInitial)
{
sb.Append(",");
}
sb.Append(""" + resEnum.Key + "":"" + resEnum.Value.ToString().Replace("rn","").Replace(""",""") + """);
}
sb.Append("}");
}
@(Html.Raw( sb.ToString()));
资源文件“JsCustomersRes”可以与特定的控制器视图目录一起放置在共享视图目录中. 然后,您可以从脚本中的json对象获取资源字符串: var resString = CustomersResourceObj[key]; 其中“key”是您想要的资源字符串的关键字符串.只需将剃须刀作为部分视图添加到布局页面或单独的页面,就可以了,就是这样! (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Asp.net形成认证cookie,不符合IIS7超时
- asp.net-mvc – 404 Asp.Net中的Http错误处理程序MVC(RC 5)
- 一个ASP.NET Web应用程序中的经典.ASP和.NET .aspx网页
- asp.net-mvc-3 – System.Web.Mvc.HandleErrorInfo错误的模
- asp.net-mvc – 用于电话号码或社会安全号码的DisplayForma
- 什么时候应该在ASP.NET控件中使用#和=
- asp.net – 在ashx文件中,我可以设置返回文件的文件名吗?
- asp.net – 可接受的安全性:使用Paramatised SQL和HTML编码
- asp.net-mvc – 文件“/ Views/Position/Edit.cshtml”不能
- VS2005(c#)项目调试问题解决方案集锦 转
推荐文章
站长推荐
- 在ASP.NET中将HTML转换为PDF时保持CSS样式
- asp.net-mvc – ASP.NET MVC和Visual Studio 201
- asp.net-mvc – ASP.net MVC – 视图如何访问模型
- asp.net – 如何在IIS 7.5中配置应用程序池在停止
- asp.net-mvc-3 – 不能使用NuGet PagedList ASP.
- asp.net – 从页面代码中访问代码隐藏变量
- asp.net-mvc – 返回json中的双引号
- asp.net – MVC动态页权限使用授权属性?
- 使用ASP.NET webAPI上载文件(最大文件大小为10Mb
- asp.net-mvc – Visual Studio 2010 Web发布缺少
热点阅读
