簡體   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