Visual studio 2013 自动映射测试在TeamCity构建中的隐式加宽转换失败,但在本地测试失败
我有以下自动映射配置:Visual studio 2013 自动映射测试在TeamCity构建中的隐式加宽转换失败,但在本地测试失败,visual-studio-2013,teamcity,automapper,Visual Studio 2013,Teamcity,Automapper,我有以下自动映射配置: Mapper.CreateMap<Source, Dest>() .ForMember(dest => dest.InitiatorUserAccountUID, opt => opt.UseValue(0)); Mapper.CreateMap() .FormMember(dest=>dest.InitiatorUserAccountUID,opt=>opt.UseValue(0));
Mapper.CreateMap<Source, Dest>()
.ForMember(dest => dest.InitiatorUserAccountUID, opt => opt.UseValue(0));
Mapper.CreateMap()
.FormMember(dest=>dest.InitiatorUserAccountUID,opt=>opt.UseValue(0));
InitiatorUserAccountUID
的类型为long
。Mapper.assertconfigurationsvalid()
单元测试在本地通过,但在TeamCity上失败,出现以下错误:
AutoMapper.AutoMapperConfigurationException:上的以下属性
无法映射System.Int64:
InitiatorUserAccountUID
当我在配置中显式地将0转换为long时,测试在两个位置都通过。这是什么原因造成的
团队城市构建信息:
- 跑步者类型:Visual Studio(sln)
- Visual Studio:Microsoft Visual Studio 2013工作室
- 测试步骤的流道类型:MSTest
- MSTest.exe的路径:MSTest 2013
[DeploymentItem(“AutoMapper.Net4.dll”)]
。现在一切正常。这是automapper令人恼火的问题。另一种方法是在测试项目的某处引用AutoMapper.Net4.dll
中的类,例如var type=typeof(NullableConverterFactory)//表示将引用AutoMapper.Net4.dll并将其复制到输出测试文件夹。
有关详细信息,请参阅