Я работал с использованием JTS, хотя я не уверен, почему это было необходимо, и это значительно замедлило время импорта данных.
Вот новое определение типа поля:
<fieldType name="my_geom"
class="solr.SpatialRecursivePrefixTreeFieldType"
spatialContextFactory="JTS"
autoIndex="true"
distanceUnits="kilometers"
format="WKT"
geo="true"
/>
Я также скачал JTS jar, согласно документации Solr.
Однако я все еще не могу объяснить , почему использование JTS необходимо, учитывая, что документация Solr привела меня к мысли, что я должен быть в состоянии индексировать полигоны, используя Geo3D:
Geo3D - разговорное название пространственного 3d-модуля Lucene, включенного в Solr. Это библиотека вычислительной геометрии, реализующая различные формы (включая многоугольники) на сфере или эллипсоиде WGS84.
blockquote>Использование Geo3D не дало мне ошибок при импорте или запросе, просто не дало ожидаемых результатов. Weird ...
Если это настольное приложение, лучший способ сохранить настройки приложения и / или пользователя - использовать встроенные методы. Использование настроек в C #
РЕДАКТИРОВАТЬ
Это будет во многом зависеть от типа приложения.
Если это настольное приложение, вы можете сохранить информацию в реестр в зоне пользователя. Или в их каталог пользователя на диске. Если это веб-приложение или серверное приложение, вам нужно будет сохранить его в базе данных с ключом пользователя или в файле на диске, названном для каждого пользователя или чего-то в этом роде.
Поскольку вы упоминаете опции, кажется, что путь клиента более скорее всего.
ConfigurationManager работает довольно хорошо (настольное приложение). По сути, вы используете xml-файл app.config для сохранения настроек. Для наиболее простого использования просто отредактируйте app.config. Добавьте пару ключ-значение для каждого параметра, который вы хотите сохранить ... затем, чтобы получить к нему доступ, просто сделайте ConfigurationManager.get .. ["yourKey"], и он вернет параметр. Установка это почти то же самое.
В приложениях .Net создайте такие настройки с помощью встроенных параметров настроек в Visual Studio - значения сохраняются в файл конфигурации, но VS предоставляет вам хороший интерфейс для их создания и класс .Net для доступа к ним строго типизированным способом. Таким образом, вы можете создавать пользовательские настройки или настройки приложения.
Чтобы создать файл настроек, дважды щелкните папку «Свойства», затем перейдите на вкладку «Настройки» и нажмите ссылку, чтобы создать файл «settings.settings» (да, отличное имя!). Как только вы это сделаете, вы увидите фактические настройки, хранящиеся в app.config, и автоматически сгенерированный код, чтобы добраться до них, в Settings.designer.cs.
Когда вы говорите, «у каждого пользователя есть свой набор настроек», вы говорите о приложении, которое является общим коллегами по сети или через приложение на компьютере с общим доступом?
Лично я бы пошел по пути файла настроек. Вы можете использовать реестр, но это делает меня подозрительным. В Windows были места (предполагается, что вы в Windows) для хранения пользовательских данных навсегда и один день, все, что вам нужно сделать, это написать в них. И если вы работаете в Vista, запись в реестр может быть невозможной, если только вы не хотите, чтобы UAC запрашивал ваших пользователей.
Если ваше приложение уже использует какой-либо SQL-сервер, используйте его. Создайте таблицу настроек или сумку с ключом / значением и сохраните ее там. Сериализуйте это в объект и наоборот, и вы получите версию 1 менеджера настроек.