C# 如何为to类型参数添加2个新的()约束?

C# 如何为to类型参数添加2个新的()约束?,c#,.net,generics,syntax,generic-constraints,C#,.net,Generics,Syntax,Generic Constraints,我想要这样的东西: public static TTo JumpTo<TFrom, TTo>(this TFrom from_page) where TTo : new() TFrom : new() { ... } public static TTo JumpTo(此TFrom from_页) 其中TTo:new()t从:new()开始 { ... } 我想强制执行TFrom和TTo都是从基类型派生的 我想使这个方法成为TFrom类型的扩展方法 可能吗?

我想要这样的东西:

public static TTo JumpTo<TFrom, TTo>(this TFrom from_page) 
       where TTo : new() TFrom : new()
{
    ...
}
public static TTo JumpTo(此TFrom from_页)
其中TTo:new()t从:new()开始
{
...
}
我想强制执行TFrom和TTo都是从基类型派生的

我想使这个方法成为TFrom类型的扩展方法


可能吗?正确的语法是什么?

将关键字
放在每个类型前面

public static TTo JumpTo<TFrom, TTo>(this TFrom from_page) 
    where TTo : SomeBaseType, new() 
    where TFrom : SomeOtherBaseType, new()
{
     ...
}
public static TTo JumpTo(此TFrom from_页)
其中TTo:SomeBaseType,new()
其中TFrom:SomeOtherBaseType,new()
{
...
}

将关键字
放在每种类型前面的
位置

public static TTo JumpTo<TFrom, TTo>(this TFrom from_page) 
    where TTo : SomeBaseType, new() 
    where TFrom : SomeOtherBaseType, new()
{
     ...
}
public static TTo JumpTo(此TFrom from_页)
其中TTo:SomeBaseType,new()
其中TFrom:SomeOtherBaseType,new()
{
...
}


@AD.Net:你的观点是什么?编辑:这不会编译。顺便说一句,输入参数上的
新的
约束实际上没有意义,除非你在内部复制内容。@AD.Net:这听起来更像VB.Net,但在VB.Net中,它将
作为某个类型,从另一个类型
所以实际上一点也不正确。你们是对的,我的语法错了@广告网:你的观点是什么?编辑:这不会编译。顺便说一句,输入参数上的
新的
约束实际上没有意义,除非你在内部复制内容。@AD.Net:这听起来更像VB.Net,但在VB.Net中,它将
作为某个类型,从另一个类型
所以实际上一点也不正确。你们是对的,我的语法错了!谢谢,我想将JumpTo作为TFrom的扩展方法。有可能吗?@smwikipedia:你的编辑就是这么做的!您可以添加到一个静态类。@smwikipedia是的,您可以将其设置为一个扩展方法。目前,我将该方法设置为一个静态类。但是对于TFrom类型,该方法不显示。我还在尝试。@smwikipedia请发布一个完整的示例,包括包含的静态类。谢谢,我想将JumpTo作为TFrom的扩展方法。有可能吗?@smwikipedia:你的编辑就是这么做的!您可以添加到一个静态类。@smwikipedia是的,您可以将其设置为一个扩展方法。目前,我将该方法设置为一个静态类。但是对于TFrom类型,该方法不显示。我还在尝试。@smwikipedia请发布一个完整的示例,包括包含静态类的示例。