2009-04-16 12 views
32

Przeglądam aplikację ASP.NET, która intensywnie korzysta z meta: resourcekey, który wydaje się być połączony z plikami resx.ASP.NET meta: resourcekey

To jest obszar, który wydaje się, że całkowicie mnie mijał. Czy ktokolwiek ma jakieś wskazówki dotyczące korzyści i celu tego podejścia i najlepszych praktyk?

+3

I nie zapomnij, potrzebujesz atrybutu "runat = server", aby obiekt był zlokalizowany. –

Odpowiedz

52

Składnia meta:resourcekey umożliwia użycie składni deklaratywnej w wyrażeniach Implicit Resource. Jest to używane podczas lokalizowania witryny do użytku międzynarodowego. Poniższe instrukcje QuickStarts (link poniżej) wyjaśniają, że tego rodzaju wyrażenia są powiązane z plikami .resx znajdującymi się w folderze App_LocalResources.

Zaletą tego rodzaju wyrażenia jest to, że może korzystać z wielu właściwości dla pojedynczego elementu sterującego, które są zdefiniowane w pliku .resx zamiast samego ASPX.

Na przykład, podejmują poniżej etykiecie:

<asp:Label ID="myLabel" runat="server" Text="This text is localizable" meta:resourcekey="myLabelResource1"> 
</asp:Label> 

plik RESX dla tej strony mógłby zawierać dane dla wielu właściwości dołączonych do wytwórni takich jak:

<data name="myLabelResource1.Font-Name"> 
    <value xml:space="preserve">Default Font name</value> 
    </data> 
    <data name="myLabelResource1.Text"> 
    <value xml:space="preserve">Text in default language.</value> 
    </data> 
    <data name="myLabelResource1.ToolTip"> 
    <value>Tooltip in default language.</value> 
    </data> 

The ASP.NET quickstarts stanowią doskonałą podkładu jeśli chcesz zrozumieć tę koncepcję.