ILMerge DLL: Блок, не объединенный в правильно, все еще перечисленный как внешняя ссылка

Если бы я реализовал ваш сценарий, я бы не предпочел опрос, поскольку меньше смысла делать повторные вызовы в службу и сохранять занятость службы / сети. Кроме того, если вам нужно внедрить новый клиент, вам придется снова выполнить опрос.

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

Очистить сохраненный результат только после обновления базовой таблицы базы данных (?) Или, если это слишком сложно, через каждые 30 секунд.

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

36
задан Fiona - myaccessible.website 31 July 2013 в 13:26
поделиться

2 ответа

Мне пришлось использовать / closed аргумент. Согласно официальной документации :

Closed

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

37
ответ дан 27 November 2019 в 06:11
поделиться

В то время как публикация выбора 'Не объединяется' от, настраивают и, чем публикуют Проект

0
ответ дан 27 November 2019 в 06:11
поделиться
Другие вопросы по тегам:

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