У меня есть класс ContainerElementCtrl
и MainContainer
, в котором я пытаюсь вызвать методы класса ContainerElementCtrl
из моего класса MainContainer
, используя универсальный параметр, который получает методы setDataInUI
в классе MainContainer
.
Чтобы добиться этого, я пытаюсь ограничить типы универсальных параметров T
, используя where T : DataA, DataB
предложение where, которое выдает ошибку.
Как мне этого добиться?
ContainerElementCtrl .cs
public class ContainerElementCtrl : MonoBehaviour
{
public void setData(DataA tabTypeAData)
{
Debug.Log("setData type A " + tabTypeAData.title);
}
public void setData(DataB tabTypeBData)
{
Debug.Log("setData type B " + tabTypeBData.title);
}
}
MainContainer.cs
public class MainContainer : MonoBehaviour
{
public GameObject containerElement;
public void setDataInUI<T>(T m_tabsData)
where T : DataA, DataB
{
containerElement.setData(m_tabsData);
}
}
public class DataA
{
public string title;
public string picUrl;
}
public class DataB
{
public string title;
}