我已经提供了两个库,每个库都有自己的命名空间,它们对于api的请求部分具有相同的类结构,但是具有不同的响应。两个命名空间具有相同的类,如何防止必须编写两个相同的函数?
我想编写一个函数,可以处理与其名称空间类型无关的两个请求(我尝试过泛型但未能创建解决方案)。
这里是什么,我试图做一个例子:
public void Function1()
{
Namespace1.MyType type1 = new Namespace1.MyType1();
type1.InnerType = new Namespace1.MyType2();
type1.PerformMethod1();
}
public void Function2()
{
Namespace2.MyType type1 = new Namespace2.MyType1();
type1.InnerType = new Namespace2.MyType2();
type1.PerformMethod1();
}
我试图通过以下方式在方法级别使用泛型:
public void Function1<TType1, TType2>()
where TType1: NamesSpace1.Type1, NamesSpace2.Type1, new()
where TType2: Namespace1.Type2. Namespace2.Type2(), new()
{
TType1 type1 = new TType1();
type1.InnerType = new TType2();
type1.PerformMethod1();
}
然而,.NET确实不允许泛型的这种限制。 关于如何创建通用函数的任何建议都非常棒。
谢谢
当然你可以用命名空间调用它? Cplusplus是这样的情况 – 2013-02-21 11:38:16