自动映射器的通用扩展方法

2023-12-14

public abstract class Entity : IEntity
{
    [Key]
    public virtual int Id { get; set; }
}

public class City:Entity
{
    public string Code { get; set; }
}

public class BaseViewModel:IBaseViewModel
{
    public int Id { get; set; }
}

public class CityModel:BaseViewModel
{
    public string Code { get; set; }
}

我的域和视图类...

and

用于映射扩展

public static TModel ToModel<TModel,TEntity>(this TEntity entity)
    where TModel:IBaseViewModel where TEntity:IEntity
{
    return Mapper.Map<TEntity, TModel>(entity);
}

我正在使用如下所示

City city = GetCity(Id);
CityModel model = f.ToModel<CityModel, City>();

但它很长

我可以像下面这样写吗?

City city = GetCity(Id);
CityModel model = f.ToModel();

那可能吗?


与其跳过所有这些麻烦,为什么不直接使用:

public static TDestination ToModel<TDestination>(this object source)
{
    return Mapper.Map<TDestination>(source);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

自动映射器的通用扩展方法 的相关文章

  • 启动时出现 OData v4 错误:找不到段“Whatever”的资源

    我正在构建新的 v4 服务 一切进展顺利 直到我为新模型 实体添加了新控制器 并在启动站点进行测试运行时收到此错误 控制器似乎编码正确 就像其他控制器一样 控制器 CustomersOData 中的操作 GetFeed 上的路径模板 Cus
  • 如何为 C 分配的 numpy 数组注册析构函数?

    我想在 C C 中为 numpy 数组分配数字 并将它们作为 numpy 数组传递给 python 我可以做的PyArray SimpleNewFromData http docs scipy org doc numpy reference
  • 将内置类型转换为向量

    我的 TcpClient 类接受vector
  • C++中的类查找结构体数组

    我正在尝试创建一个结构数组 它将输入字符串链接到类 如下所示 struct string command CommandPath cPath cPathLookup set an alarm AlarmCommandPath send an
  • 将 System.Windows.Input.KeyEventArgs 键转换为 char

    我需要将事件参数作为char 但是当我尝试转换 Key 枚举时 我得到的字母和符号与传入的字母和符号完全不同 如何正确地将密钥转换为字符 这是我尝试过的 ObserveKeyStroke this new ObervableKeyStrok
  • 存储来自其他程序的事件

    我想将其他应用程序的事件存储在我自己的应用程序中 事件示例 打开 最小化 Word 或打开文件时 这样的事可能吗 运行程序 http msdn microsoft com en us library ms813609 aspx and 打开
  • 获取 WPF 控件的所有附加事件处理程序

    我正在开发一个应用程序 在其中动态分配按钮的事件 现在的问题是 我希望获取按钮单击事件的所有事件 因为我希望删除以前的处理程序 我尝试将事件处理程序设置为 null 如下所示 Button Click null 但是我收到了一个无法分配 n
  • 回发或回调参数无效。使用“”启用事件验证

    当我从客户端回发页面时 出现以下错误 我有修改客户端 asp ListBox 的 JavaScript 代码 我们该如何解决这个问题 错误详细信息如下 Server Error in XXX Application Invalid post
  • ASP.NET:获取自 1970 年 1 月 1 日以来的毫秒数

    我有一个 ASP NET VB NET 日期 我试图获取自 1970 年 1 月 1 日以来的毫秒数 我尝试在 MSDN 中寻找方法 但找不到任何东西 有谁知道如何做到这一点 从 NET 4 6 开始 该方法ToUnixTimeMillis
  • 使用 JNI 从 Java 代码中检索 String 值的内存泄漏

    我使用 GetStringUTFChars 从使用 JNI 的 java 代码中检索字符串的值 并使用 ReleaseStringUTFChars 释放该字符串 当代码在 JRE 1 4 上运行时 不会出现内存泄漏 但如果相同的代码在 JR
  • C++:.bmp 到文件中的字节数组

    是的 我已经解决了与此相关的其他问题 但我发现它们没有太大帮助 他们提供了一些帮助 但我仍然有点困惑 所以这是我需要做的 我们有一个 132x65 的屏幕 我有一个 132x65 的 bmp 我想遍历 bmp 并将其分成小的 1x8 列以获
  • Visual Studio 中的测试单独成功,但一组失败

    当我在 Visual Studio 中单独运行测试时 它们都顺利通过 然而 当我同时运行所有这些时 有些通过 有些失败 我尝试在每个测试方法之间暂停 1 秒 但没有成功 有任何想法吗 在此先感谢您的帮助 你们可能有一些共享数据 检查正在使用
  • 将 log4net 与 Autofac 结合使用

    我正在尝试将 log4net 与 Autofac 一起使用 我粘贴了这段代码http autofac readthedocs org en latest examples log4net html http autofac readthed
  • Java 中更高级的泛型

    假设我有以下课程 public class FixExpr Expr
  • 私有模板函数

    我有一堂课 C h class C private template
  • gcc 的配置选项如何确定默认枚举大小(短或非短)?

    我尝试了一些 gcc 编译器来查看默认枚举大小是否很短 至少一个字节 强制使用 fshort enums 或无短 至少 4 个字节 强制使用 fno short enums user host echo Static assert 4 si
  • 用于 C# 的 TripleDES IV?

    所以当我说这样的话 TripleDES tripledes TripleDES Create Rfc2898DeriveBytes pdb new Rfc2898DeriveBytes password plain tripledes Ke
  • 有没有办法强制显示工具提示?

    我有一个验证字段的方法 如果无法验证 该字段将被清除并标记为红色 我还希望在框上方弹出一个工具提示 并向用户显示该值无效的消息 有没有办法做到这一点 并且可以控制工具提示显示的时间 我怎样才能让它自己弹出而不是鼠标悬停时弹出 If the
  • 编译时“strlen()”有效吗?

    有时需要将字符串的长度与常量进行比较 例如 if line length gt 2 Do something 但我试图避免在代码中使用 魔法 常量 通常我使用这样的代码 if line length gt strlen Do somethi
  • 检查Windows控制台中是否按下了键[重复]

    这个问题在这里已经有答案了 可能的重复 C 控制台键盘事件 https stackoverflow com questions 2067893 c console keyboard events 我希望 Windows 控制台程序在按下某个

随机推荐

  • Getopt::Long 将带空格的字符串获取到变量中

    我正在制作一个 perl 脚本 它使用 Getopt Long 来解析命令行参数 但是 我有一个参数可以接受字符串 带空格 如何将整个字符串放入变量中 例如 script pl string blah blah blah blah yup
  • 在 C# 中启动进程而不分散控制台窗口的注意力

    我弄清楚如何启动一个进程 但我现在的问题是控制台窗口 在本例中为 7z 会在最前面弹出 阻挡我的视线并消除我的焦点 打断我的句子或每隔几秒钟我正在做的事情 这非常烦人 我该如何防止这种情况发生 我以为 CreateNoWindow 可以解决
  • Python 中的“imrect”等价物是什么?

    我正在寻找一个简单的 Python 实用程序或模块 我可以给它一个图像 它会弹出一个 GUI 窗口 供用户在图像内绘制一个框 绘制盒子后 返回盒子的坐标 MATLAB 用户会意识到我要求的imrectPython 中的等价物 有没有一个简单
  • Matlab:数组在循环内增长 - 那又怎样? [复制]

    这个问题在这里已经有答案了 我有这段代码 将图像读入一个巨大的矩阵 allImages for ii 1 n img imread fileNames ii img imresize rgb2gray img 100 100 allImag
  • 如何在FeathersJS中实现自定义/复杂的操作路线

    我需要实现一堆在 FeathersJS 应用程序上执行非常自定义 复杂操作的路由 其中一条路线是 Category disableExclusiveContentsOf id 它对六个数据库表运行查询以查找与类别相关的行 id只 我绝对不能
  • 保存txt文件的javascript代码

    任何人都可以告诉我如何使用也与浏览器兼容的 javascript 创建 txt 文件 创建文件后 它会提供另存为对话框 以便我可以保存创建的文件 任何其他逻辑也很受欢迎 我在 IE 中做得很好 但相同的代码无法在其他浏览器中运行 出于明显的
  • 剪切路径 SVG 多边形 Internet Explorer

    该代码在 IE 中不起作用 我需要使用它 因为我必须制作一个跟随地图上的点的箭头 div width 100 height 100 position absolute top 0px right 0px background red cli
  • 如何通过两个按钮实现多个日期选择器功能并保存选择的日期?

    我想创建一个活动 其中想要有两个按钮和多个标签 用户可以单击按钮来选择日期开始和结束 而这些选定的日期可以显示在标签中 以便用户可以知道用户已经选择了哪些日期 任何人都可以指导我该怎么做 使用多个日期选择器功能 两个按钮上只有两个日期选择器
  • DefaultAzureCredetials 无法通过 Visual Studio 进行身份验证 - 找不到 AzureServiceAuth\tokenProvider.json

    我正在尝试从以下位置连接到 Azure Key Vault 实例 NET 4 7在 IIS 和调试器下本地运行的应用程序 Visual Studio 202217 4 4 但遇到以下异常Azure Identity当调用执行 KeyVaul
  • C# Selenium 横向移动仿真

    我正在使用 c 在 Net 环境中使用 Selenium 进行一些移动 UI 测试 我能够在纵向模式下使用 chrome 移动仿真非常成功地进行测试 但我找不到如何将仿真置于横向模式 我希望能够在测试期间以编程方式轮换 但通过研究看来这还不
  • 为什么 jQuery 的 height() 会自动将值向上舍入?

    我想计算列表的计算高度 在 IE 上 这两者给出不同的结果 在 Chrome 上 该值似乎总是整数 所以我没有遇到这个问题 gives a string of 353 7px window getComputedStyle mylist n
  • 什么更好?循环中的notifyDataSetChanged 或notifyItemChanged?

    所以我有一个活动RecyclerView我想改变TextView中的每一项的RecyclerView通过按下按钮onClickListener 在活动中 我想知道在性能方面什么更好 Use notifyDataSetChanged ones
  • Django 对图像上传的可疑操作

    在我的管理员中 我尝试上传图像 单击 保存 后出现此错误 SuspiciousOperation at admin the chooser book add Attempted access to media 51VqHa8exoL jpg
  • Rails - 在 link_to 中传递参数

    我的帐户索引页面列出了所有帐户 每个帐户都有一个指向 服务 的链接 这应该将用户定向到 my services new 页面 并使用适当的 ID 预先填充 account id 字段 具体取决于在帐户索引页面上单击的链接 我在每个页面的底部
  • 一种间隔重叠矩形的算法?

    这个问题实际上涉及翻转 我将在下面概括如下 我有一个 2D 视图 并且屏幕上的某个区域内有许多矩形 我如何展开这些盒子 使它们不相互重叠 但仅以最小的移动来调整它们 矩形的位置是动态的并且取决于用户的输入 因此它们的位置可以在任何地方 At
  • 从 Azure 自动化帐户运行时 Get-AzureBlobContent 抛出错误

    我在尝试通过我的 Azure 自动化帐户从 Azure 存储帐户下载 blob JSON 文件 时遇到失败 看起来像是授权问题 这适用于我的本地笔记本电脑 但不适用于 Azure 自动化帐户 即使我将容器设置为 公共 也不起作用 我已为资源
  • 在 SQL Server 2008 中保护敏感信息不被 DBA 获取

    我们的客户需要加密 MOSS 内容数据库 因此如果没有正确的加密密钥 DBA 或未经授权的人员就无法查看内容数据库 SQL Server 2008 中的透明数据加密 TDE 似乎无法保护 DBA 的敏感信息 因为 TDE 旨在保护 静态 数
  • 在 PHP 中使用 DOMPDF 的 PDF 页面中的标题

    我正在使用 DOMPDF 创建 PDF 文件 我有大量内容要提取为 PDF 我们需要在所有页面中添加一些标题 那么谁能告诉我如何在 PDF 中添加页眉和页脚 以便使用 DOMPDF 在所有页面中显示页眉 在 0 6 0 代码中 您将能够使用
  • JQuery 自动建议服务器端[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 事实证明 开发一个服务器端
  • 自动映射器的通用扩展方法

    public abstract class Entity IEntity Key public virtual int Id get set public class City Entity public string Code get s