У меня есть два предложения.
1) Переместите перечисление MyObject.Types в отдельный проект, на который ссылаются как MyObject, так и MyManager.
2) Создайте перечисление в проекте MyManager, совпадающее с перечислением в проекте MyObject. Тогда у вас может быть какой-то метод отображения:
public void Init(string name, MyManager.Types type)
{
MyObject.Types t = type.ToMyObjectType();
}
internal static class Extensions
{
public static MyObject.Types ToMyObjectType(this MyManager.Types t)
{
//do mapping
}
}
Я бы не советовал использовать второй подход, потому что, если перечисление в MyObject когда-либо изменится, вам также нужно помнить об обновлении этого кода.