问题标签 [automapper-3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 如何使用类型转换为 automapper 创建表达式以创建 Enum 映射
我有两节课:
source.Employee 和 destination.Employee 。
我的函数目标属性名称中只有两个名称,即destination.TestEnum1 和源属性名称,即source.TestEnum1。
我想动态创建表达式,如下所述。
表情简直了
我正在创建它以在 Project().To(); 中映射 Enum。作为
给出无法将 MyEnum2 映射到 int 32 的异常。
来源员工:
目标员工类别:
asp.net-mvc-4 - 无法将 Dto 映射到 ViewModel
我正在使用最新版本的 AutoMapper。
我 Mapper.CreateMap<ArticleDto, EditViewModel>();
在我的自动映射器引导程序类中有调用global.asax
这是相同的完整列表:
我花了将近两个小时来弄清楚下面的映射有什么问题。
这是我的控制器中的代码。
这种 Dto 到 ViewModel 的转换失败。
谁能帮我解决这个问题?这是异常详细信息
这是 Mapper.AssertConfigurationIsValid(); 结果成
如上述错误所述,这是我更新映射的方式
即使这样,我也会得到与下面给出的相同的错误。
c# - 为每个枚举创建 ITypeConverter
所以,基本上我正在尝试创建一个 TypeConverter 以在任何枚举映射中运行。以下代码中的注释解释了我目前遇到的问题。
- 如果我从字符串映射到枚举我的 TypeConverter 运行。
- 如果我从字符串映射到状态(枚举),我的 TypeConverter不会运行。
我可以在特定枚举映射期间运行 TypeConverter 的唯一方法是为我的命名空间内的每个枚举创建一个映射(CreateMapForEveryEnum() 方法)。但是当然,使用反射对性能不利,应该避免。
automapper-3 - 使用自动映射器映射 COM 对象
我在从 COM 对象映射到对象时遇到问题。我相信问题在于GetType()
COM 对象返回System.__ComObject
. 我怎样才能解决这个问题?
automapper - 自动映射器的 ECCN
我正在构建一个将在海外使用的 C# VS2012 应用程序。我多年来一直在使用 Automapper,并希望继续使用它。交给我的一项规定是,我在 Microsoft 之外的项目的所有附加组件都必须具有已发布的 ECCN(出口控制分类号)。Microsoft为 .NET Framework 4.5 和 Visual Studio 2013发布了 ECCN。它们在导出时受到信任。我一直在为 Automapper 寻找已发布的ECCN,我能找到的最接近的内容是这篇 Google 群组文章,其中 Jimmy Bogard 亲自回应说对于 .NET 框架也是如此。但是,我被要求提供Automapper发布的ECCN,其中会声明如下官方内容:
“Automapper 的 ECCN 是:[x]”。
我查看了Automapper GitHub 站点,但找不到我需要的东西。
有任何想法吗?
c# - AutoMapper 将枚举映射到 SelectList - 所选值不起作用
我创建了一个映射,它使用 ITypeConverter 的自定义实现将枚举转换为 SelectList。
然后我通过使用创建了一个地图
一切似乎都很好,除了 的Selected
价值SelectListItem
不保持其价值。我已经能够进入代码,并且SelectListItem
sli1
它被正确创建,所选值等于true
.
但是,当我在映射后检查该值时,该值始终false
如您从以下屏幕截图中看到的那样。
这段代码我哪里错了?
c# - AutoMapper 继承错误
我有以下抽象类
和下面的具体类
这是地图
代码说配置无效,因为
由于ReverseMap()
调用而发生错误。如何设置反向映射以忽略成员而不复制映射?
inheritance - 使用自动映射器继承
Automapper 文档中有一个用于继承的示例,如下所示:
我想做类似的事情,但我不想在域模型中使用继承。我正在使用实体框架,并且我在实体框架中使用继承,直到我发现当你有许多派生实体(我有 30 个)时性能非常糟糕。这个性能问题网上有讲。我想摆脱继承并使用标准的关系模型,但我无法弄清楚我需要做什么才能让它与 Automapper 一起使用。
修改上面的例子,我的情况是这样的:
因此您可以看到,现在域对象不使用继承,而是像标准关系数据库一样简单地相互链接。我仍然希望 DTO 对象使用继承。在这个例子中我将如何使用 Automapper?
linq - Automapper 多态集合的 IQueryable 扩展行为不同
使用 Automapper 3.3.1.0 的使用之间存在不同的映射Mapper.Map<IEnumerable<TDestination>>(someEnumerable)
行为someEnumerable.AsQueryable().Project().To<TDestination>()
这似乎不是 SQL LINQ 提供程序或其他提供程序的限制,因为这在内存中集合中得到了见证。
与许多事情一样,这最好通过示例来解释:
注意: 以下代码可以在https://gist.github.com/kmoormann/b3949d006f4083ab6ee4找到
我了解 IQueryable 扩展存在限制 ,.Project().To<TDestination>
但我不知道的是:
- 哪个限制导致了这种行为?
- 这是 Automapper 限制还是 LINQ 限制
- 是否有解决办法仍然使用可查询的扩展而不是
Mapper.Map<TDestination>(obj)
专门恢复?
为后代:链接讨论主题
c# - 如何在构造函数中使用 AutoMapper 映射到“this”
我有一个具有属性的源类型和一个具有完全相同属性的目标类型。
在我为 AutoMapper 配置一个简单的映射后,例如:
我想有一个 MyDestinationType 的构造函数,它有一个 MySourceType 参数,然后使用这样的源自动初始化正在创建的类型的属性:
我发现的唯一解决方法是为
有什么办法可以不产生这种静态的丑陋?