Skip to content

IgnoreCase has no invariant option #181

@mpondo

Description

@mpondo

The current implementation of IgnoreCase does not include an option for invariant culture.

This caused an issue for us, since some of our users have their Windows regional settings set to Turkish. Turkish has a dotted and a dotless version of the letter "i", which means that using a simple ToLower for the character comparison was not working and the parsing was failing.

To see the issue, set your regional settings to Turkish and run this line of code:
char.ToLower('I') == char.ToLower('i')

For my project, I've created a new method that does the same logic but uses ToLowerInvariant() to resolve the issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions