具有下列泛型类要包含下面string, int, float, long
作为类型:C#:声明和使用不同类型的泛型类的列表,如何?
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做什么详细点吗?我们可能会更好地帮助你。 – 2009-02-26 13:55:32
SomeMethod所做的与此无关。我只是补充说SomeMethod(object)没有定义。 – 2009-02-26 14:11:47
您的基本设计有缺陷。我建议问一个问题,详细说明需求和解决方案并征求建议。 – Will 2009-02-26 14:13:38