2009-06-17 4 views
0

Я деформирую объект ArcGIS IFeature с классом, который имеет мои требуемые свойства, чтобы получить и установить их легко. В принципе, операции get и set просто используют feature.get_value(index) и feature.set_value(indes, value) и выставляют строго типизированное значение.
У меня есть несколько полей, которые используют домен (в основном, IDictionary<string, object>) для представления общих свойств в приложении.
Сначала я понял, что буду использовать только ключи домена (которые являются нормальными значениями int) в моем классе упаковки и использовать домен в моем методе ToString() для перевода на строки для пользовательского интерфейса.
Позже я понял, что могу использовать строки в своем приложении (что упрощает передачу нулей, так как фактические поля домена имеют значение NULL большую часть времени), и только изменяют те получатели и сеттеры полей, которые используют GetDomainValue(index) и SetDomainValue(index, value) метод, который будет переводить между ключом и значением в/из основного объекта объекта.Должен ли я использовать значения или ключи?

Какой подход, на ваш взгляд, лучше? Я понял, что строковый подход является немного более «постоянным неосведомленным», так как моему классу все равно, как сохраняются значения, просто их строковое представление. С другой стороны, он заставляет код прыгать через циклы немного - вместо того, чтобы возвращать то, что находится в этой функции, каждый геттер должен итерировать домен.

ответ

0

Я закончил тем, что придерживался значений домена, поэтому я также могу проверить, что код вызова передал действительное значение.

0

Возможно, вам стоит подумать о представлении своих полей домена с помощью Nullable< Int32>. Это даст вам возможность представить функции, которые имеют заданное значение домена, но также позволяет прямо указывать null, где это необходимо.

+0

Да, сначала я использовал int? подход, но в итоге я работал с значениями домена - таким образом, я также могу убедиться, что вызывающий код не пытается помещать недопустимые значения в поле. –

Смежные вопросы