LocalizeString is Visual Studio External Tool, which makes localization of asp.net pages much easier and faster.

To make literals in aspx pages translatable to other languages you have to create resource file in App_LocalResources directory and manually copy/paste texts from page to resource file, and replace instances of texts in page with <%$ Resource: ResourceKey %>. This can be very stodgy and slow process. This tool will make your life easier: You only have to select text to localize in aspx page and it creates new record in local resource file and replace text instances in aspx page with pointer to translation string. Only thing left to do is create copies of resource file with different cultures and write translations itself!

Learn more about local resources: http://quickstarts.asp.net/QuickStartv20/aspnet/doc/localization/localization.aspx#resources

To install tool in Visual Studio do following:

1. Extract to somewhere LocalizeString.exe from archive.
2. Open Visual Studio > Tools > External tool.
3. Add new external tool:
- Title: Localize String,
- Command: <browse for LocalizeString.exe> file,
- Arguments: $(ItemPath) $(CurText) $(CurLine) $(CurCol)

To use tool do following.

1. Open aspx page in Visual Studio you need to create localization resources for.
2. Create resource directory ("App_LocalResources") and resx file (ex "Default.aspx.resx") related to current aspx page.
3. Select text in aspx page you want to replace with localized.
4. Run tool: Tools > Localize String

this will create new data element in resource file and aspx page will updated accordingly.
If selected text is not set to control property, tool will create <asp:Literal /> wrapper.
Keep in mind that tool creates resource key from text you selected and replaces only selected text instance in aspx page.
It uses first 30 letters in PascalCasing for resource key and truncates unsupported characters.

Screens:

before.png


after.png

Last edited Jan 16, 2010 at 4:34 PM by vladkalos, version 17