2

我的界面上定义了一堆方法,如下所示:

T Map<T>( SomeType someParam ); 

并像这样实现:

public T Map<T>( SomeType someParam )
{
  return AutoMapper.Mapper.Map<SomeType, T>( someParam );
}

如何简化我的界面,以便我只有一种方法,例如:

T Map<T>(T someParam);

public T Map<T>( T someParam )
{
  return AutoMapper.Mapper.Map<T, T>( someParam );
}

但是,当我以这种方式实现它时,我收到有关从 SomeType 和另一种类型转换的转换错误。这可能与泛型有关,如何?

4

1 回答 1

6

只需提供更通用的类型参数:

public T1 Map<T1,T2>( T2 someParam){
  return AutoMapper.Mapper.Map<T1, T2>( someParam);
}
于 2013-09-06T16:25:05.407 回答