我正在尝试将viewModel类映射到Model。
这是ViewModel
...
public class LicenseInfoViewModel
{
public SystemInfo SystemInfo { get; set; }
}
...
这是我的模特
...
public class LicenseInfoModel
{
public SystemInfo SystemInfo { get; set; }
}
...
SystemInfo
是公共代码中的一个类(单独的项目)
答案 0 :(得分:1)
使用AutoMapper加载单独的程序集Proofix.Utility
时出现问题。
如果已标记,则应查看引用的程序集
来自 Proofix.Utility
,并使用CopyLocal="True"
我想,在带有CopyLocal="true"
的引用中标记此程序集将解决问题。
CopyLocal="True"
实际上意味着在构建期间*.dll
引用程序集的文件将存储在启动项目的bin
目录中。
如果无效,请检查配置管理器(Build / Configuration Manager ...)是否选中了Build
项目的复选框Proofix.Utility
。
如果不起作用 - 尝试在Visual Studio中清理/重建解决方案或重新打开解决方案。
答案 1 :(得分:0)
如果您认为它们是映射代码中的问题,请尝试使用此代码进行映射
public static P MapObject<T, P>(T from, P to)
{
var p = Activator.CreateInstance(typeof (P));
foreach (PropertyInfo propertyInfo in typeof(T).GetProperties())
{
typeof(P)
.GetProperty( propertyInfo.Name,
BindingFlags.IgnoreCase |
BindingFlags.Instance |
BindingFlags.Public)
.SetValue(to,
propertyInfo.GetValue(from));
}
return to;
}