1

我在 Asp.net 中有一个资源文件,我正在从那里读取值,如下所示

var val1 = '<% = Resources.Test.FirstValue%>';  //Hello
var val2 = '<% = Resources.Test.SecondValue%>';  //World          
alert(val1);
alert(val2);

它确实工作正常。但是假设我想在 C# 中使用 String.Format 函数,以便将其设置为“Hello - World”,如下所示

var val3 = '<%= string.Format("{0} - {1}",<% = Resources.Test.FirstValue%>,<% = Resources.Test.SecondValue%> %>';

它引发了一些编译时错误

Invalid expression term '<'
Invalid expression term '='
) expected
; expected
Invalid expression term ')'

我不能在 Javascript 中以这种方式使用服务器端功能。但是,以下工作

var val3 = '<%= string.Format("{0} - {1}","Hello","World") %>';

好吧,我知道这个问题可以使用 javascript 本身来解决。我只是想知道如何让 C# 的 String.Format 函数与资源文件值一起在 Javascript 中工作。

因此,请仅提供与 String.Format 和 Resource 文件值有关的更正/解决方案。

非常感谢

4

1 回答 1

1

为此,您只需要 1 组<%=%>。您还缺少).string.Format

var val3 = '<%= string.Format("{0} - {1}", Resources.Test.FirstValue, Resources.Test.SecondValue) %>';

但是,一组<%=和之间的所有内容%>都是 C#,它不支持进一步使用这些模板运算符。结束前一组后,您只需要再次使用这些运算符:

var val3 = '<%= Resources.Test.FirstValue %> - <%= Resources.Test.SecondValue %>';
于 2012-05-19T05:09:45.633 回答