gpt4 book ai didi

petapoco - 实现 IMapper 接口(interface)

转载 作者:行者123 更新时间:2023-12-03 17:52:06 34 4
gpt4 key购买 nike

我过去使用过 PetaPoco,用 [Column("{column name")] 装饰我的对象属性等等。但是,我正在尝试实现一个“纯”域模型,它不了解持久性,因此不了解 PetaPoco 的属性。

PetaPoco blog提到有一个IMapper必须实现的接口(interface)(“New Mapper API”)以便将对象映射到它们的表而不修饰对象的类。但是,无论是博文还是源代码都没有真正解释 IMapper 的实现是什么。应该做的。

如果我只是想将我的域实体映射到特定的表、主键和列名,我是否需要实现 IMapper我该怎么做?

最佳答案

有更多关于映射器的最新信息 here .基本上,您可以选择编写一个实现 IMapper 的类。或创建 ConventionMapper 的后代(它已经实现了 IMapper 并提供了更详细的自定义钩子(Hook))。您可以选择为每种类型编写一个映射器或为每个程序集编写一个映射器。
ConventionMapper如果您遵循某些命名约定(因此得名),那么从类型中推断表名和列名已经非常聪明了;有时,创建一个只有 InflectColumnName() 的一些备用规则的后代就足够了。和 InflectTableName()并将其注册为整个程序集。但是,如果您的字段名称看起来与表列名称完全不同,那么 IMO 您最好实现 IMapper每个类型从头开始(或从 StandardMapper 继承)并填写所有细节。

关于petapoco - 实现 IMapper 接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18902651/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com