this custom culture is to provide support for the pseudo translation described in Chapter 9, in which developers and testers can use a culture other than the devel- oper’s own culture, can test that the application is globalized and localized, and still can be able to use the application without having to learn another language. The complete code for the pseudo translation custom culture is not shown here because it is identical to the previous example, except that the values are different.
The pseudo translation custom culture values themselves are important only because they must not be the same as those of an existing culture. This allows devel- opers and testers to observe that globalization and localization are occurring. This is a little trickier than it might at first seem. The first problem is that, in choosing suit- able language and region codes for the pseudo translation culture, you should avoid existing codes. You might think of using “ps-PS” (for (Pseudo (Pseudo)), but the “ps” language code and “PS” region code have already been taken. Refer to the links in the Bengali (Bangladesh) custom culture to avoid choosing identifiers that are already taken. I have chosen “pd-PD” because these are still free at the time of writ- ing. However, to ensure future safety of your choice, the safest solution is to choose a code that does not conform to the ISO specifications (e.g., “p1-P1” uses a number, which is not acceptable in these specifications). Using this approach, you can be sure that if it doesn’t conform to the specification, the code will never be used by anyone else.
Many of the pseudo culture’s values are easy to invent:
builder.CultureEnglishName = “PseudoLanguage (PseudoRegion)”; builder.CultureNativeName =
builder.ThreeLetterISOLanguageName = “psd”; builder.ThreeLetterWindowsLanguageName = “psd”; builder.TwoLetterISOLanguageName = “pd”;
builder.RegionEnglishName = “PseudoRegion”; builder.RegionNativeName = “[!!! builder.ThreeLetterISORegionName = “PSD”; builder.ThreeLetterWindowsRegionName = “PSD”; builder.TwoLetterISORegionName = “PD”;
builder.IetfLanguageTag = “pd-PD”;