繁体   English   中英

如何在JavaScript中访问嵌入式ASP.NET GlobalResources?

[英]How can I access embedded ASP.NET GlobalResources in JavaScript?

我正在研究一个遗留的ASP.NET项目,我试图慢慢地按摩它,但如果不像巧克力手指房子那样崩溃,我就无法做出重大改变....

我试图找到一个解决方案,但由于术语的具体组合(“javascript”,“嵌入式”和/或“资源”只是给我关于如何嵌入.js文件的信息,因此失败了。 。),以及它可能是一种奇怪的做事方式。

该项目利用App_GlobalResources进行可翻译的字符串,后者用于C#代码,标记和一些JavaScript中。 例如:

HTML:

Text="<%$Resources: Resources, MeasuresLabel %>"

JS:

setDialogTitle('summaryDialog', physicalElementName, Resources.Resources.Summary);

这一切都运行正常,直到我们开始使用NUnit进行一些集成测试。 为了使Resources.resx可用于NUnit,我遵循了Scott Allen的建议 ,该建议适用于NUnit,但意味着上面的Resources.Resources未定义。

所以,我的问题是这个嵌入式文件,我如何让它可以访问JavaScript(或者有更好的方法让我可以使用NUnit)?

由于我希望通过在单独的.js文件中访问它而不是在.aspx文件中的脚本标记内访问它,因此会增加复杂性。

编辑在看了一些之后,真正的挑战是在JS中访问的属性是静态的。 由于引用这些位置的数量,为每个正在使用的字符串添加变量是不实际的。

我认为JS文件没有通过ASP.NET引擎,它们按原样提供,这就是为什么在你的情况下没有定义Resources.Resources.Summary,而它嵌入在<script>标签中时可以工作.aspx文件。 我知道的唯一方法是将已使用的资源值存储在.aspx页面上的全局javascript变量中,然后在加载的JS文件中使用它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM