2009-11-19 15 views
10

Mam zlokalizowaną aplikację ASP.net (.net 2.0). Chciałbym połączyć dwa ciągi pobrane z pliku zasobów razem w jeden element, coś w tym stylu.Jak połączyć 2 ciągi zasobów razem na stronie aspx

Text="<%$ Resources:Resource, lw_name %>" + <%$ Resources:Resource, lw_required %>" 

Próbowałem używać Eval bez powodzenia. Czy to, co próbuję zrobić "poprawne" podejście lub czy mogę przechowywać ciągi znaków z symbolami zastępczymi w pliku zasobów i interpolować je "w locie".

Próbuję to zrobić w pliku aspx, a nie w kodzie.

Odpowiedz

8

Wartości atrybutów znaczników ASP.NET, które używają <%$ Something: Something Else %>, mają specjalną składnię o nazwie ASP.NET Expressions. Używanie ich jako wartości atrybutów to prawie wszystko lub nic; nie ma sposobu na dodanie żadnego kodu do pliku ASPX, aby manipulować tym, co te wyrażenia oceniają. Będziesz musiał to zrobić w kodzie z tyłu.

+0

Dzięki, byłem w połowie spodziewałem się tej odpowiedzi. –

+0

To właśnie musiałem zrobić! Dzięki! – JoeFletch

0

< asp: HyperLink tooltip = '<% # "Some tekstu:". + Eval ("id") toString()%>' ...... />

Czy znaczy, że coś takiego to .... tooltip = '...' -> Konwersja wartości zwracanych do STRING ... (xxxx.ToString())

Jak to wyświetla: jakiś tekst: 1234 -> na Tooltip

, więc powinieneś zrobić coś takiego w twoim przypadku: Tekst = "<% $ (Zasoby: zasoby, nazwa_własności) .ToString()%>" + <% $ (zasoby: zasób, l w_required) .ToString()%>”

ja nie wiem, czy to będzie działać, ale starają się CONVER do toString().

+0

Niestety, to nie działa. Pojawić się następujący błąd: _ '(Resources wyrażenie prefiks nie recognized_ –

2

szukam rozwiązania tak długo Ten kod działa dla mnie:

ToolTip='<%# Resources.Global.Btn_Edit + "/" + Resources.Global.Btn_contact %>' 
+0

Jego zastosowanie w pliku zasobów lokalnych, ale co się stanie, jeśli użyłem pliku zasobów globalizacji. HttpContext.GetGlobalResourceObject („ResourceLabelButton”, „CommonPrint”) –

0

Wiem, mówiłeś, że próbowałeś eval ale co coś takiego:

text =”<% # smyczkową .Format ("{0} {1}", Eval ("nazwa_własności"), Eval ("lw_required"))%> '

0

Wystąpił ten sam problem i rozwiązałem go, używając tej opcji:

Text="<%= HttpContext.GetGlobalResourceObject("Resource", "lw_name") %> <%= HttpContext.GetGlobalResourceObject("Resource", "lw_required") %>" 

Dla lokalnych zasobów, należy użyć metody GetLocalResourceObject zamiast GetGlobalResourceObject

0

Spróbuj "@(Resources.ResourceString + Resources.ResourceString)"

0

użyć tej metody, aby dołączyć 2 sznurki w aspx.

Text='<%# String.Format("{0} {1}", 
     Resources.file01.string1,Resources.file01.string2)%>' 
Powiązane problemy