Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » .NET - [решено] подключение разных сборок с одинаковыми методами

Ответить
Настройки темы
.NET - [решено] подключение разных сборок с одинаковыми методами

Аватара для Surround

Ветеран


Сообщения: 908
Благодарности: 20

Профиль | Отправить PM | Цитировать


Здравствуйте!
Есть такая хитрая ситуация: две библиотеки-посредника для получения данных из некоторых баз. Подключаются к проекту посредством Using. Наименования методов и классов одинаковы, но, соответственно работают они в разных контекстах (базах). В проекте есть метод получения данных, он должен по параметру обращаться то к одной, то к другой библиотеке. Все бы ничего, но метод также использует и типы данных, получаемые из подключаемых модулей. По сути дела, код один и тот же, только обращение к данных зависит от того, какая ссылка подключена в Using. Мучаюсь с идеей, а возможно ли, например, для блока кода определить свой контекст подключаемой сборки, ведь логика кода неизменна, а типы данных зависят только от подключенной в Using сборки?

Отправлено: 18:15, 19-09-2013

 

В Поисках Истины


Сообщения: 802
Благодарности: 135

Профиль | Отправить PM | Цитировать


Surround, не совсем понятно что нужно сделать.
Но из того что понял:
в Using указать обе библиотеки. Потом использовать делегаты. И в зависимости от логики вызывать функции из сборок.

-------
foreach(short w in new short[] {73,3,79,83,90,79,78,69}){
Console.Write((char)w);
}


Отправлено: 08:28, 20-09-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Surround

Ветеран


Сообщения: 908
Благодарности: 20

Профиль | Отправить PM | Цитировать


LilLoco, да, что-то типа такого требуется. Подключаются две сборки, например, но в зависимости от условия переменная имеет тип из одной, или другой сборки (название типа абсолютно одинаковы, разное лишь происхождение, родительская сборка). То же самое и с методами, т.е. obj.method может быть из разного происхождения

Отправлено: 10:43, 20-09-2013 | #3


Аватара для ViRTaCe

Пользователь


Сообщения: 139
Благодарности: 11

Профиль | Отправить PM | Цитировать


Если я правильно понял ваш вопрос, то вам нужно однозначно идентифицировать метод. Для этого можно использовать полное название классов для получения экземпляра, вместо сокращенного. Например:
Код: Выделить весь код
FirstLib.Sublib.MyClass //Вмето, MyClass
SecondLib.SubLib.MyClass //Аналогично предыдущему

-------
Кривые руки исправляются опытом.

Это сообщение посчитали полезным следующие участники:

Отправлено: 00:52, 25-09-2013 | #4


Аватара для Surround

Ветеран


Сообщения: 908
Благодарности: 20

Профиль | Отправить PM | Цитировать


В принципе, на данном этапе решил проблему создание еще одного подобного дочернего класса с переименованными методами.
Спасибо!

Отправлено: 09:17, 03-10-2013 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » .NET - [решено] подключение разных сборок с одинаковыми методами

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Подключение двух разных видеокарт для разных целей heriff1 Видеокарты 7 12-01-2013 21:32
.NET - совместное использование сборок разных версий Surround Программирование и базы данных 0 11-05-2012 18:11
C/C++ - Возникла непонятка с виртуальными методами классов Oleg_SK Программирование и базы данных 5 12-06-2010 09:35
Аудит доступа к объектам нестандартными методами Sctl Microsoft Windows NT/2000/2003 3 29-09-2008 18:06
[решено] Подключение разных планок оперативной памяти Normal Материнские платы и память 3 13-03-2008 13:48




 
Переход