Pergunta

o Controle literal Funciona o tempo todo

<asp:Literal ID="Literal7" runat="server" 
    Text="<%$ Resources:ErrorMessages, errorCompanyNotFound %>" />

Mas se eu quiser usar isso como um parâmetro em uma imagem, como

<img src="blahblah" alt="" 
    title"<%$ Resources:ErrorMessages, errorCompanyNotFound %>" />

Dá o erro irritante

Expressões literais como '' não são permitidas. Use em vez disso.

O mesmo acontece se eu tentar acessá -lo através JavaScript

var noHit = '<%$ Resources:ErrorMessages, errorCompanyNotFound %>';

Alguém tinha qualquer ideia Como posso buscar o valor global de recursos nessas circunstâncias?

Foi útil?

Solução

A única maneira de encontrar o trabalho corretamente era usar um método público em vez do <%$ ligar.

em código atrás eu fiz:

public string GetResource(string ResourceName, string ResourceKey)
{
    string r = HttpContext.GetGlobalResourceObject(ResourceName, ResourceKey) as string;
    if (r == null)
        return ResourceKey;
    return r;
}

Então foi tão fácil quanto chamá -lo:

<img src="blahblah" alt="" 
    title"<%= GetResource("ErrorMessages", "errorCompanyNotFound") %>" />

e

var noHit = '<%= GetResource("ErrorMessages", "errorCompanyNotFound") %>';

Espero que isso ajude alguém como eu :)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top