使用Automapper,设置全局约定的最佳方法是什么,以便将所有System.Uri属性转换为表示AbsoluteUri属性的字符串?
理想情况下,我想将一个null System.Uri解析为值String.Empty而不是null.
设置地图:
Mapper.CreateMap<System.Uri, string>().ConvertUsing<UriToStringConverter>();
Run Code Online (Sandbox Code Playgroud)
创建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;
}
}
Run Code Online (Sandbox Code Playgroud)