|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
объясните, зачем городить рефлексию в данным случае? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 12:37 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
Petro123BRS_1, Какая критика. Субд 9ка это субд прошлого тысячилетия. От того что нет апдейта ПО страдают все. И код в том числе. Субд у нас сейчас 11 версия, а вот клиент остался местами 9 версии, местами 11. Насчет страданий - все зависит от обстоятельств. В нашем случае с повышением ничего не измениось, как впрочем не изменилось бы и с понижением с 11 на 9 субд. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 13:09 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
Roman Mejtesобъясните, зачем городить рефлексию в данным случае? Есть более простое решение? С удовольствием ознакомлюсь. Всё переинсталить, отформатировать, перейти на линукс, сменить страну/планету - не предлагать. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 13:11 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
BRS_1Есть более простое решение? С удовольствием ознакомлюсь. Ну, хотя бы всю работу с рефлекшеном вынести в отдельный класс, чтобы на каждое действие с базой не писать огромную простыню работы с рефлекшеном. Ну, и как бы выше я еще предлагал вариант с перенаправлением сборок в конфиге. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 13:13 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
BRS_1Субд у нас сейчас 11 версия, а вот клиент остался местами 9 версии, местами 11.не понял. Так в чем изначальная ПРОБЛЕМА? Как автоматом проапгрейдить клиента оракла у клиентов? Или использовать подключение к базе не требуещее клиента оракле на машине? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 13:19 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
Сделать 2 поставщика данных для 11 и 9 версии, определить интерфейсы взаимодействия которые будут общими для обоих поставщиков . Это всяко лучше, чем городить вот такой говнокод, от которого кровь из глаз, а потом и из зада пойдет, если надо будет это поддерживать. Таким образов вы абстрагируйтесь от клиента СУБД и его версии, будет совершенно не важно, Oracle это или MSSQL. Динамически загружать нужный и возвращать интерфейс взаимодействия. И работать с ним по человечески, а не вот таким чудесным образом, как у вас... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 13:34 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
Roman Mejtesданных для 11 и 9 версиида. Но выше он вообще сказал что 9ку убрали. Непонятно. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 13:48 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
Сон Веры ПавловныНу, хотя бы всю работу с рефлекшеном вынести в отдельный класс, чтобы на каждое действие с базой не писать огромную простыню работы с рефлекшеном. Согласен, но поленился т.к. программа примитивная (старт, один запрос данных, сохранение в файл, завершение работы). Сон Веры ПавловныНу, и как бы выше я еще предлагал вариант с перенаправлением сборок в конфиге. Было дело, но на тот момент не смог разобраться. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 14:05 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
BRS_1Согласен, но поленился т.к. программа примитивная (старт, один запрос данных, сохранение в файл, завершение работы). как это согласуется с: BRS_1Есть более простое решение? С удовольствием ознакомлюсь. Всё переинсталить, отформатировать, перейти на линукс, сменить страну/планету - не предлагать. ? Я так понял, что такого решение как вы привели - нельзя использовать в реальной жизни. Удачи! ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 15:08 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
Petro123Я так понял, что такого решение как вы привели - нельзя использовать в реальной жизни. Удачи! Наверное, мы друг друга не понимаем. Есть два файла Oracle.DataAccess.dll (v.9.2.0.700) и Oracle.DataAccess.dll (v.2.112.1.0) . В программу я могу подключить только один из них. На одних компьютерах программа скомпилированная с DLL от 9 оракла будет работать, на других нет. И наоборот, на тех компьютерах, где не работает программа с DLL от 9 оракла - там будет работать программа с DLL от 11 оракла. Что хотелось - получить один универсальный билд программы, который будет подключать необходимую DLL из двух и работать. (При этом ничего и нигде не переустанавливать, не приводить все компы к одному программному единообразию и не менять ландшафт вручную). В результате написания - программа работает как и хотелось, но получился такой вот страшный код. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 17:04 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
BRS_1Наверное, мы друг друга не понимаем.ну дак разговаривай, для этого и форум. Где ответ - какие у тебя сервера для коннекта? У меня вот вроде, из NuGet дрова к ораклу стоят. Получается, что не ответив на вопросы выше ты зря написал это: BRS_1Есть два файла Oracle.DataAccess.dll (v.9.2.0.700) и Oracle.DataAccess.dll (v.2.112.1.0) . В программу я могу подключить только один из них. На одних компьютерах программа скомпилированная с DLL от 9 оракла будет работать, на других нет. И наоборот, на тех компьютерах, где не работает программа с DLL от 9 оракла - там будет работать программа с DLL от 11 оракла. Что хотелось - получить один универсальный билд программы, который будет подключать необходимую DLL из двух и работать. (При этом ничего и нигде не переустанавливать, не приводить все компы к одному программному единообразию и не менять ландшафт вручную). В результате написания - программа работает как и хотелось, но получился такой вот страшный код. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 17:10 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
BRS_1, создаете сборку Х, описывайте в ней все интерфейсы взаимодействия вашего клиентского приложения с базой или более примитивные вещи создаете сборку У, подключаете к ней сборку X и сборку клиента 9 версии, создаете в сборке классы реализующие интерфейсы из сборки X, через 9 клиент создаете сборку Z, подключаете к ней сборку X и сборку клиента 11 версии, создаете в сборке классы реализующие интерфейсы из сборки X, через 11 клиент подключаете сборку X в свою клиентскую программу, пишите код который осуществляет вызов нужных вам методов через интерфейсы определенные в сборке X. Во время запуска в Runtime загружает либо сборку У, либо сборку Z, создаете экземпляр объектов реализующий интерфейс из сборки X и используйте его через интерфейс. интерфейсы именно для этого и придумали. есть подозрения, что клиент 9 и 11 версии уже реализуют интерфейсы пространства имен System.Data ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2019, 17:19 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
Roman Mejtes, Благодарю, попробую ... |
|||
:
Нравится:
Не нравится:
|
|||
25.04.2019, 08:41 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
>BRS_1, 30 июл 18, 22:03 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1300032&msg=21616255][21616255] >...Подскажите, если нельзя добавить обе в проект… <Посмотрите здесь . Работаю так: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.04.2019, 10:05 |
|
Oracle.DataAccess.dll двух версий в одном проекте. Как реализовать?
|
|||
---|---|---|---|
#18+
>BRS_1, 30 июл 18, 22:03 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1300032&msg=21616255][21616255] >...Подскажите, если нельзя добавить обе в проект… <Посмотрите здесь . Работаю так: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.04.2019, 10:07 |
|
|
start [/forum/topic.php?fid=20&msg=39805702&tid=1398974]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
167ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 263ms |
0 / 0 |