Método de extensão genérica para automapper

public abstract class Entity : IEntity
{
    [Key]
    public virtual int Id { get; set; }
}

public class City:Entity
{
    public string Code { get; set; }
}

public class BaseViewModel:IBaseViewModel
{
    public int Id { get; set; }
}

public class CityModel:BaseViewModel
{
    public string Code { get; set; }
}

meu domínio e visualizar classes ...

para extensão de mapeamento

public static TModel ToModel<TModel,TEntity>(this TEntity entity)
    where TModel:IBaseViewModel where TEntity:IEntity
{
    return Mapper.Map<TEntity, TModel>(entity);
}

e eu estou usando como abaixo

City city = GetCity(Id);
CityModel model = f.ToModel<CityModel, City>();

mas é longo

posso escrever como abaixo?

City city = GetCity(Id);
CityModel model = f.ToModel();

isso é possível

questionAnswers(6)

yourAnswerToTheQuestion