【发布时间】:2010-10-10 02:02:42
【问题描述】:
具有以下泛型类,该类将包含 string, int, float, long 作为类型:
public class MyData<T>
{
private T _data;
public MyData (T value)
{
_data = value;
}
public T Data { get { return _data; } }
}
我正在尝试获取 MyData<T> 的列表,其中每个项目将是不同的 T。
我希望能够访问列表中的项目并获取其值,如下代码所示:
MyData<> myData = _myList[0]; // Could be <string>, <int>, ...
SomeMethod (myData.Data);
其中 SomeMethod() 声明如下:
public void SomeMethod (string value);
public void SomeMethod (int value);
public void SomeMethod (float value);
更新:
SomeMethod() 来自另一个我无法控制的等级,并且 SomeMethod(object) 不存在。
但是,我似乎找不到让编译器满意的方法。
有什么建议吗?
谢谢。
【问题讨论】:
-
您能否详细说明您的 SomeMethod 的作用?我们或许能更好地帮助您。
-
SomeMethod 所做的与这里无关。我只是补充一点,SomeMethod(object) 没有定义。
-
您的基本设计有缺陷。我建议您提出一个问题,详细说明您的要求和解决方案并征求建议。