Comments 6
Во первых спасибо!
И пара вопросов.
1. Зачем вам свойство List в модуле Iso3166Countries? (Ну и вообще класть в переменную list словарь — необычно, лучше уж map или countriesLookup или вроде того :))
2. Почему бы не возвращать целиком Iso3166Country? То бишь сделать дополнительный метод. Может кому понадобится, а форкать будет лениво.
3. Можно в Iso3166Country сделать readonly поля вместо свойств, будет ощутимо быстрее на рантаймах где нет или плохой инлайнинг (моно этим грешит). Единственное не уверен насчет разного рода MVVM'ов, там наверное может оказаться что на полях не работает биндинг (проверить бы)
Еще тесты покрывают только удачные кейсы, ни null, ни string.Emtpy.
Еще наверное было бы очень удобно добавитьфлажок CaseSensitive. Часто страны хранят в LC.
И пара вопросов.
1. Зачем вам свойство List в модуле Iso3166Countries? (Ну и вообще класть в переменную list словарь — необычно, лучше уж map или countriesLookup или вроде того :))
2. Почему бы не возвращать целиком Iso3166Country? То бишь сделать дополнительный метод. Может кому понадобится, а форкать будет лениво.
3. Можно в Iso3166Country сделать readonly поля вместо свойств, будет ощутимо быстрее на рантаймах где нет или плохой инлайнинг (моно этим грешит). Единственное не уверен насчет разного рода MVVM'ов, там наверное может оказаться что на полях не работает биндинг (проверить бы)
Еще тесты покрывают только удачные кейсы, ни null, ни string.Emtpy.
Еще наверное было бы очень удобно добавитьфлажок CaseSensitive. Часто страны хранят в LC.
Вы точно уверены, что этой поддержки нет? MSDN убеждает в обратном — классы CultureInfo и RegionInfo.
Или все дело в Андорре?
Или все дело в Андорре?
CultureInfo[] cinfo = CultureInfo.GetCultures(CultureTypes.AllCultures & ~CultureTypes.NeutralCultures);
foreach (CultureInfo cul in cinfo)
{
var ri = new RegionInfo(cul.Name);
var name = ri.TwoLetterISORegionName;
}
Sign up to leave a comment.
ISO-3166 в .NET Framework