Letter "i" problems occur when you use the XML encoding with Turkish settings (317505)
The information in this article applies to:
- Microsoft ADO.Net 2.0
- Microsoft ADO.NET (included with the .NET Framework)
This article was previously published under Q317505
This article refers to the following Microsoft .NET Framework Class Library namespaces:
SYMPTOMS
If the header of an Extensible Markup Language (XML) file specifies an encoding type that contains a lowercase "i," and if you are running a Turkish version of Microsoft Windows, you receive the following error message when you try to read the XML into a DataSet object:
An unhandled exception of type 'System.Xml.XmlException' occurred in system.xml.dll
Additional information: System error.
If you catch this exception in a try... catch block, you receive information that is similar to the following:
The system does not support 'ascXX' encoding. Line 1, position 31.
Press any key to continue
CAUSE
When the Microsoft .NET Framework parses the XML file, the encoding type in the header is converted to uppercase before the header is processed. This problem occurs because the Turkish alphabet has two distinct letters that resemble a dotted letter "i" and an undotted letter "i." Windows treats the English lowercase letter "i" as a different Turkish letter than the English uppercase letter "I."
RESOLUTION
To resolve this problem, use uppercase letters for the encoding type in the XML header. This ensures that all valid encoding types are recognized on computers with either Turkish settings or non-Turkish settings.
REFERENCES
For more information about localization issues that involve the Turkish letter "i," see the Dr. International column at the following Microsoft Web site:
Modification Type: | Major | Last Reviewed: | 3/10/2006 |
---|
Keywords: | kbtshoot kberrmsg kbnofix kbprb kbSystemData KB317505 kbAudDeveloper |
---|
|