2010-02-11 57 views
4

我创建了一个名为server.aspx的网页和相关的本地资源文件server.aspx.resx。在资源文件中,我定义了消息“{0}是必需的”。与关键错误。ASP.NET:如何将值从本地资源传递给字符串?

在我的.aspx页面中我访问字符串:

<asp:RequiredFieldValidator ControlToValidate="textboxName" runat="server" ErrorMessage="<%$ Resources:Error %> ID="validatorName"> 

现在我想传递一个值,例如文本框“名称”的名字到资源字符串,使errormessage的是“名字是必需的。“

有没有可能将值传递给字符串?

托本

回答

1
string message = GetFromResourceFile(); 
string completeMessage = string.Format(message, "Name"); 
+0

好吧,但是这只能在代码后面?但是我怎样才能在.aspx页面中做到这一点? – Torben 2010-02-11 10:23:57

1
<asp:RequiredFieldValidator 
    ControlToValidate="textboxName" 
    runat="server" 
    ErrorMessage="<%$ string.Format(Resources:Error, 'textboxName') %> 
    ID="validatorName"> 

或者你可以尝试在后面的代码如下...

validatorName.ErrorMessage = string.Format(Resources.Error, "textboxName"); 
+0

当我尝试这种方式时,我收到错误消息,表明服务器标记格式不正确。 – Torben 2010-02-11 10:35:35

+0

尝试使用单引号,即ErrorMessage ='<%$ string.Format(资源:错误,“textboxName”)%>' – 2010-02-11 10:58:43

+0

没有用。用单引号出现错误“表达式前缀'string.Fornat(Resources'was not recognized。” – Torben 2010-02-11 11:05:45

相关问题