广告
返回顶部
首页 > 资讯 > 精选 >ADO.NET如何自定义对象
  • 128
分享到

ADO.NET如何自定义对象

2023-06-17 20:06:27 128人浏览 独家记忆
摘要

这篇文章主要讲解了“ADO.net如何自定义对象”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ADO.NET如何自定义对象”吧!ADO.NET实体框架提供了相应的工具,以便根据 实体数据模型

这篇文章主要讲解了“ADO.net如何自定义对象”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ADO.NET如何自定义对象”吧!

ADO.NET实体框架提供了相应的工具,以便根据 实体数据模型 (EDM) 的概念性架构定义语言 (CSDL) 文件自动生成对象层。可以对这些数据类进行不同程度的自定义,具体取决于应用程序的要求。您也可以修改自己的自定义数据类,以将其用于 EDM。当您从现有应用程序升级数据类以使用 实体框架 时,或者当您希望对创建数据类的方式进行更多控制时,这很有用。

扩展分部数据类

EDM 中定义的类型不像面向对象编程中使用的类那样具有关联的方法。相反,它们只包含 EDM 中定义的属性。您可以通过扩展已生成的分部数据类向对象中添加功能。在通过 实体数据模型工具生成数据类时,将以分部类的形式实现这些数据类。分部类将类的定义拆分到两个或更多个源文件中。每个源文件包含类定义的一部分,当编译应用程序时,将组合所有部分。

拥有分部类后,您能够用单独源文件中的自定义方法和属性扩展这些类,而无需担心在已生成的文件刷新时丢失您的自定义。

自定义业务逻辑

在使用生成的数据类时,可以在某些对象服务操作(例如,更改属性或关系)过程中调用自定义业务逻辑。此业务逻辑可能包括在更改属性或调用 SaveChanges 时创建附加验证或登录。通过处理由对象服务引发的事件,或者通过定义在更改属性时调用的自定义分部方法,可以调用自定义业务逻辑。

自定义数据类

有某些情况下,只通过添加方法和属性来扩展分部类可能无法提供足够的灵活性。假定现有一个 .NET Framework 应用程序使用 ADO.NET 将数据库中的数据加载到 CLR 对象中,以供该应用程序使用。这些对象可能包含必须保留在对象层中的有价值的自定义和业务逻辑。这些自定义可能会妨碍您将应用程序迁移为使用实体框架。您可能还希望对实体类型进行更多的控制,而不仅仅是扩展生成的分部类。

将自定义数据类与 EDM 一起使用的建议方式是从 EntityObject 继承。Entity Framework 提供了一组接口,如果不能从 EntityObject 继承,或需要比框架更多的独立性时,可以实现这些接口以将自定义数据类用于 EDM。在使用自定义数据类时,必须向自定义数据类和属性应用属性,并且在更改属性时通知对象上下文。

生成的数据类从 EntityObject 或 ComplexObject 继承。如果您必须将自定义数据类与 EDM 一起使用,建议的方式是修改您的数据类,以便从这两个基类继承。通过这种方式,自定义数据类将受益于 EntityObject 所提供的更改跟踪和关系管理功能。

在从 EntityObject 和 ComplexObject 继承时,请记住以下要点:
◆类和属性名称必须与 EDM 的概念性架构定义语言 (CSDL) 文件中定义的实体类型和属性名称相匹配。如果这些名称不匹配,您必须更改数据类和属性的名称,或者更新 CSDL 和关联的映射规范文件MSL 中的名称。有关更多信息,请参见如何:自定义实体数据模型以使用ADO.NET自定义对象(实体框架)。
◆CSDL 中定义的实体类型的每个属性,都必须在自定义数据类中有一个关联的属性。自定义数据类可以具有其他未映射到 CSDL 中定义的属性的属性。
◆您必须向自定义数据类和属性应用属性。这些属性在对象和 CSDL 之间提供显式映射。
◆若要使对象服务能够跟踪对ADO.NET自定义对象进行的更改,必须使用 EntityObject 更改报告方法按照特定模式报告这些更改。
◆Entity Framework 工具还生成其他能够简化对象编程的类。对自定义数据类使用此代码很有用。有关更多信息,请参见如何:将对象服务用于自定义对象(实体框架)。
◆在从 EntityObject 继承时,必须通过从 ComplexObject 继承来实现复杂类型。

感谢各位的阅读,以上就是“ADO.NET如何自定义对象”的内容了,经过本文的学习后,相信大家对ADO.NET如何自定义对象这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: ADO.NET如何自定义对象

本文链接: https://www.lsjlt.com/news/292568.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • ADO.NET如何自定义对象
    这篇文章主要讲解了“ADO.NET如何自定义对象”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ADO.NET如何自定义对象”吧!ADO.NET实体框架提供了相应的工具,以便根据 实体数据模型...
    99+
    2023-06-17
  • Laravel如何自定义验证对象
    这篇文章主要介绍“Laravel如何自定义验证对象”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Laravel如何自定义验证对象”文章能帮助大家解决问题。Laravel 5.5 将提供一个全新的自定...
    99+
    2023-07-04
  • JavaScript怎么自定义对象
    这篇文章主要介绍“JavaScript怎么自定义对象”,在日常操作中,相信很多人在JavaScript怎么自定义对象问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaSc...
    99+
    2022-10-19
  • Python自定义对象转json、jso
    自定义对象转Json:自己探索出来的,直接看下面简单的例子吧。#自定义对象转换成json import json #自定义对象 class C: key1=list key2=str key3=int ...
    99+
    2023-01-31
    自定义 对象 Python
  • 如何创建ADO.NET对象
    这篇文章主要介绍“如何创建ADO.NET对象”,在日常操作中,相信很多人在如何创建ADO.NET对象问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何创建ADO.NET对象”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-17
  • jquery如何定义对象
    在jquery中定义对象的方法:1.新建html项目,引入jquery;2.使用{}定义对象;3.使用eval方法为对象添加属性;具体步骤如下:首先,新建一个html项目,并在项目中引入jquery;<script type=&quo...
    99+
    2022-10-12
  • php如何定义对象
    在php中定义对象的方法通过变量定义对象$clsName = 'Person';$obj2 = new $clsName();echo '类名:'....
    99+
    2022-10-21
  • 如何定义ADO.NET模型
    这篇文章主要讲解了“如何定义ADO.NET模型”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何定义ADO.NET模型”吧!虽然有许多人对ADO.NET模型的安全性表示怀疑,但在年复一年的不...
    99+
    2023-06-17
  • JavaScript 自定义对象方法汇总
    目录一使用object创建对象二使用构造函数创建对象三字面量创建对象四this关键字this表示当前对象五基本数据类型和引用数据类型基本数据类型引用数据类型六闭包如何理解闭包?闭包的...
    99+
    2022-11-12
  • map插入自定义对象总结
    难道插入map还有什么讲究吗?我们且看map在STL中的定义方法:template <class Key, class T, class Compare = less<K...
    99+
    2022-11-15
    自定义对象
  • jquery如何定义json对象
    在jquery中定义json对象的方法:1.新建html项目,引入jquery;2.使用json字符串定义json对象;3.使用JSON.parse方法解析json对象;具体步骤如下:首先,新建一个html项目,并在项目中引入jquery;...
    99+
    2022-10-09
  • springboot自定义配置及自定义对象映射的全流程
    目录一、使用@Value注解获取(一个一个获取)1.1 使用方法1.2 举例说明二、自定义对象映射2.1 使用方法2.2 举例说明一、使用@Value注解获取(一个一个获取)1.1 ...
    99+
    2022-11-13
  • vue如何定义数组对象
    在vue中定义数组对象的方法:1.新建vue.js项目;2使用personQueryList方法定义数组对象;具体步骤如下:首先,在vue-cli中创建一个vue.js项目;vue create project-namevue.js项目创建...
    99+
    2022-10-06
  • JavaScript如何定义对象数组
    本篇内容介绍了“JavaScript如何定义对象数组”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!数组对象用来在单独的变量名中存储一系列的值...
    99+
    2023-06-20
  • 自定义对象作为HashMap的Key问题
    目录自定义对象作为HashMap的Key首先我们自定义一个学生对象,它有姓名和年龄两个字段.HashMap使用自定义对象作为Key的注意点1. 自定义对象不重写hashCode方法和...
    99+
    2022-11-13
  • 如何使用ADO.NET中的DataRelation对象
    这篇文章给大家分享的是有关如何使用ADO.NET中的DataRelation对象的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。ADO.NET 数据服务框架支持具象状态传输 (REST) 语义以外的功能。例如,服务...
    99+
    2023-06-17
  • Node.js如何自定义对象事件的监听与发射
    本文小编为大家详细介绍“Node.js如何自定义对象事件的监听与发射”,内容详细,步骤清晰,细节处理妥当,希望这篇“Node.js如何自定义对象事件的监听与发射”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、N...
    99+
    2023-07-02
  • php如何定义一个空对象
    在php中定义空对象的方法有以下几种使用new Cfg()定义空对象$girl = new Cfg();$girl->name = 'tom';echo $girl->name . "";使用new stdClass()语句定义空对象$bo...
    99+
    2022-10-05
  • javascript如何定义类数组对象
    这篇文章主要介绍“javascript如何定义类数组对象”,在日常操作中,相信很多人在javascript如何定义类数组对象问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ja...
    99+
    2022-10-19
  • android如何自定义对话框
    这篇文章给大家分享的是有关android如何自定义对话框的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。实现效果  定义dialog.xml (res/layout/dialog.xml)<...
    99+
    2023-06-22
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作