Share via


Files With Embedded Culture Info Strings

The project system uses the following convention for computing manifest resource names for a non-XML resource file with an embedded culture info string.

If the culture info string is supported by the .NET Framework Resource Manager, the assembly manifest resource name is computed as follows: the default namespace of the folder containing the resource file + the base filename of the resource file + the extension of the resource file.

If the culture info string is not supported by the .NET Framework Resource Manager, the assembly manifest resource name is computed as described in Files Without Embedded Culture Info Strings.

Consider a project Project1 with root namespace RootNamespace and the following hierarchy: Project1->Folder1->picture1.de-de.jpg.

For Visual Basic, where the default namespace for every folder is always the root namespace, the computed manifest resource name for picture1.de-de.jpg would be RootNamespace.picture1.jpg.

For Visual C#, where the default namespace for every folder is always inferred from the folder's location in the hierarchy, the computed manifest resource name for picture1.de-de.jpg would be RootNamespace.Folder1.picture1.jpg.

Consider the situation in the previous example, except the file picture1.de-de.jpg is now named picture1.de-ff.jpg. Although de-ff is a valid culture info string as per RFC 1766, it is not a culture info string that is supported by the .NET Framework Resource Manager. Therefore, de-ff will be included in the computed assembly resource name. In this case, the assembly resource name would be RootNamespace.picture1.de-ff.jpg for Visual Basic and RootNamespace.Folder1.picture1.de-ff.jpg for Visual C#.

See Also

Reference

Non-XML Resources

Concepts

Files Without Embedded Culture Info Strings