Automapper URI для строки соглашения - PullRequest
3 голосов
/ 09 ноября 2010

Используя Automapper, каков наилучший способ настроить глобальное соглашение таким образом, чтобы все свойства System.Uri были преобразованы в строку, представляющую свойство AbsoluteUri?

В идеале я хотел бы иметьнулевое значение System.Uri разрешается до значения String.Empty вместо null.

1 Ответ

7 голосов
/ 10 ноября 2010

Настройка карты:

Mapper.CreateMap<System.Uri, string>().ConvertUsing<UriToStringConverter>();

Создание класса TypeConverter:

public class UriToStringConverter : ITypeConverter<System.Uri, string>
{
    public string Convert(ResolutionContext context)
    {
         if (context.SourceValue == null)
         {
            return String.Empty;
         }

         return ((System.Uri)context.SourceValue).AbsoluteUri;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...