2013-05-31 2 views
0

У меня есть Project1 как основное решение, в рамках которого у меня есть Project2 и Project3.Передача данных из одного проекта в другой

Проект2 упоминается в Project3, но теперь мне нужно передать данные из Project3 в Project2

Когда я пытаюсь ссылаться Project3 в Project2 я получаю ошибку говоря

Циклические ссылки не допускаются

Как передать данные из Project3 в Project2?

данные мне нужно передать это

var events = WasteFinder.BL.Managers.EventManager.GetItemsGraph(dt) 
+0

Вы не можете ссылаться на P1 => P2 и P2 => P1 одновременно. Пересмотреть свою архитектуру – noobob

+0

Я знаю, что я не могу этого сделать, так что может быть решением ... я не могу удалить P2 в качестве ссылки в P3 – user2439085

ответ

0

У вас есть круговая ссылка. Проанализируйте, какие компоненты и какие отношения вам нужны, и удалите эту зависимость. Вероятно, вам нужно перевести логику в отдельный независимый проект, на который ссылаются ваши проекты.

Вам, вероятно, необходимо ознакомиться с шаблонами проектирования и архитектурой. Попробуйте использовать вашу систему на доске, это поможет вам решить, как ее структурировать.

0

Если оба Проекты 2 & 3 имеют доступ к Проект1, почему вы не просто использовать что-то в Проект1 передать сообщение?

0

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

Я надеюсь, что это поможет вам .. :)

2

У вас есть два варианта, чтобы попробовать его:

Вариант 1 #

Создайте еще один проект под названием Common Project и переместить общую логику между Проектом 2 & Проект 3 в нем. Затем обратитесь к этому проекту в двух других.

Project 2 -> 
    |   Common Project 
Project 3 -> 

Вариант 2 #

Хотя у вас уже есть Project 1, поэтому вместо создания Common Project вы можете использовать Project 1 вместо этого.

Project 2 -> 
    |   Project 1 
Project 3 -> 
Смежные вопросы