AutoMapper可以映射静态属性吗?

时间:2011-04-19 16:52:11

标签: asp.net-mvc vb.net automapper

鉴于下面的两个类,我可以将ApplicationSettings映射到AppSettings吗?

Mapper.CreateMap(Of ApplicationSettings, AppSettings)()
Mapper.Map(Of ApplicationSettings, AppSettings)(ApplicationSetting.Load)

Public Class ApplicationSettings

    Public Property RecaptchaPrivateKey As String
    Public Property RecaptchaPublicKey As String

End Class

Public Class AppSettings

    Public Shared Property RecaptchaPrivateKey As String
    Public Shared Property RecaptchaPublicKey As String

End Class

1 个答案:

答案 0 :(得分:1)

当Sam在C#中提出这个要求时,就在这里:

public class AppSettings
{
    public string RecaptchaPrivateKey { get; set; }
    public string RecaptchaPublicKey { get; set; }
}

public class ApplicationSettings
{
    private static ApplicationSettings _instance;

    public static ApplicationSettings Instance
    {
        get {
            if (_instance == null) { _instance = new ApplicationSettings();}                
            return _instance;
        }
    }

    public string RecaptchaPrivateKey { get; set; }
    public string RecaptchaPublicKey { get; set; }

    private ApplicationSettings()
    {
    }
}

并使用它:

Mapper.CreateMap<ApplicationSettings, AppSettings>();
var appSettings = Mapper.Map<ApplicationSettings, AppSettings>ApplicationSettings.Instance);