Доступ к Строкам подключения через веб-сервис

Чтобы иметь возможность удалить предмет, необходимо сохранить его ключ в дополнение к сохранению значения.

Итак, вы создаете список дополнений для ключей:

keys = new ArrayList<String>();

А затем в onChildAdded добавьте ключ снимка в этот список:

public void onChildAdded(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
    posts.add(dataSnapshot.getValue(GalleryPostModel.class));
    keys.add(dataSnapshot.getKey());
    unapprovedAdapter.notifyDataSetChanged();
}

можно найти ключ в onChildRemoved, что намного быстрее, чем поиск сообщения / значения:

public void onChildRemoved(@NonNull DataSnapshot dataSnapshot) {
    int index = keys.indexOf(dataSnapshot.getKey());
    posts.remove(index);
    keys.remove(index);
    unapprovedAdapter.notifyDataSetChanged();
}
6
задан Adam 30 March 2009 в 14:40
поделиться

5 ответов

Выньте свои строки подключения из основного web.config и поместите их в отдельный файл конфигурации. Этот файл затем будет тем же для всех Ваших приложений поэтому, если они должны изменить Вас, просто должны скопировать и вставить тот же файл во все Ваши папки приложения вместо редактирования каждая конфигурация отдельно.

4
ответ дан 10 December 2019 в 02:53
поделиться

Основные недостатки, которые я вижу, являются очевидной потерей производительности (и если Вы затем будете кэшировать строку подключения), и единая точка отказа, то Вы, вероятно, представите всем своим приложениям (если Вы не соберетесь загрузиться, балансируют этот сервис, который казался бы чем-то вроде излишества),

2
ответ дан 10 December 2019 в 02:53
поделиться

Что относительно того, когда Ваш веб-сервис изменяет местоположение? Затем необходимо было бы обновить все web.configs так или иначе.

Ваши приложения на том же сервере, или распространены всего через несколько серверов? Вы могли отредактировать машину web.configs для включения строк соединения с БД для сохранения большого повторения.

1
ответ дан 10 December 2019 в 02:53
поделиться

Я склонен делать одну из двух вещей. Я сохраню соединения в Машине. Конфигурация, или я создам новое имя хоста, которое просто относится к серверу БД. Я затем поместил запись в файл hosts.

Преимущество этого, я никогда не должен изменять файл конфигурации, когда я перемещаюсь от своего локального поля к dev быстродействующим или продуктивным средам.

1
ответ дан 10 December 2019 в 02:53
поделиться

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

Он мне кажется очень похожим на UDDI и дает вам еще один уровень индирекции с возможными улучшениями безопасности и улучшенной ремонтопригодностью (за исключением единственной точки отказа, которую вы можете решить в любом случае).

Конечно, есть DNS, который решит проблему с именами хостов, но с таким веб-сервисом у вас есть невероятные возможности, такие как возвращение различных строк соединения в зависимости от того, кто спрашивает (в зависимости от SSL cert или user/pass или token, служб каталога, таких как AD, LDAP, роли пользователя и т.д.). - небо - это предел :)

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

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

.
1
ответ дан 10 December 2019 в 02:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: