当前位置: 首页 > news >正文

Oracle 中使用 ObjectDataSource 读取强类型 DataSet 数据集

这一篇博文呢,将主要是介绍如何使用 ObjectDataSource 来读取数据集文件 .xsd 中的数据,

和以往唯一不同的就是,这些数据表来自 Oralce 数据库,而非 Sql Server 数据库,

如果您想在 Visual Studio 中操作 Oracle 数据库,并且可以以可视化的形式来设计数据集 .xsd 的话,

您必须按照 ODT.NET ,也就是 Oracle 开发出的针对 Visual Studio 的一个插件,

对于数据集文件呢,也就是 .xsd 文件,其实在使用 Sql Server 时,经常会用到,这个东西很方便,

而且也很简单实用,但是以前针对的都是 Sql Server 数据库,而对于 Oracle 数据库的话,

如果想要在 Visual Studio 中进行访问的话,还真只能通过 ODBC 或者 OLEDB 这些来进行访问,

为了简化开发,Oracle 和 Microsoft 合作,提供出了 ODT.NET 这个 Visual Studio 插件,

有了这个插件呢,您便可以在 Visual Studio 中自如的操作 Oracle 数据库了,

废话少说,还是先来看一些关于数据集的内容吧,

笔者的博文 《Linq to DataSet 上篇》和《Linq to DataSet 下篇》都比较详细的介绍了对数据集的操作,

但是那些都是针对于 Sql Server 的操作,而本篇博文则是采用针对 Oracle 数据库来介绍这些内容,

如果有对数据集 .xsd 的使用不了解的,请参考笔者的这两篇博文,

还是先提一下何为数据集文件吧 ?

image

这就是一个数据集文件,

而在此处就不对数据集文件做过多的介绍了,不了解的还请阅读前两篇博文,

接下来就是演示如何使用这个数据集文件来访问 Oracle 数据库中的 EMPLOYEE 数据表,

然后将一个 ObjectDataSource 绑定到这个 .xsd 数据集文件上,

最后就是将一个 GridView 的数据源设置为 ObjectDataSource 来显示数据,

既然要在 Visual Studio 中访问 Oracle 数据库的话,还是需要做一些设置的,

对环境也必须有一定的要求的,

首先您必须安装 ODT.NET 吧,

这个自己可以去 Oracle 的官网上下载与您 Oracle 数据库和 Visual Studio 相对应版本的版本,

然后安装了这个 ODT.NET 后,还需在 Visual Studio 中建立与 Oracle 数据库的连接,

上面介绍的这些知识呢,我前面的几篇博文中也都有很详细的介绍的,您只需照着做就 OK 了,

如果您还不会,那不用紧的,去看一下就 OK 了,

那么下面就开始 Demo 了,

这个 Demo 不需要写一行服务器代码,

首先,添加一个 .aspx 页面,

然后再添加一个 .xsd 数据集文件,

然后再在服务器资源管理器中将 EMPLOYEE 这个数据表拖曳到 .xsd 中,

image

image

这样您的数据集文件就算是设置成功了,注意其中的两个名字,

EMPLOYEE 和 EMPLOYEETableAdapter

其实呢上面您拖曳 Oracle 数据库中的数据表到 .xsd 文件中时,

Visual Studio 会帮您生成了一大堆的代码,

其中呢,就会帮您自动生成 EMPLOYEETableAdapter 这个类

事实上,您可以把 EMPLOYEETableAdapter 就看做是一个 SqlDataAdapter

只不过这个 EMPLOYEETableAdapter 只能够针对 EMPLOYEE 这个数据表进行操作,

完成了数据集的设计工作后,请一定要记得重新生成整个项目,

这样您的数据集所要构建的类才会生成,

然后就是来设计页面了,

页面的设计非常简单,您可以直接拖一个 GridView 到页面上,

然后设置 GridView 的数据源为 ObjectDataSource ,

接下来就是对 ObjectDataSource 的配置了,

image

经过上面的重新生成项目这一步以后呢,

在这里就可以看到 .xsd 生成的类 EMPLOYEETableAdapter 了,

选择这个类作为 ObjectDataSource 的业务对象,

image

上面的配置全部完成后就可以来查看一下整个 Demo 的效果了,

image

至此整个 Demo 又完成了,这个 Demo 呢其实是很简单的,

只不过是稍微变通了一下,改成访问 Oracle 数据库了,

同时呢,我也是为了展示一下 ODT.NET 这个插件的强大功能!!!

 

相关文章:

  • 【DocFX文档翻译】DocFX 入门 (Getting Started with DocFX)
  • 总结了一些常见的排序算法,面试必备啊!转载
  • Github上10 个最流行的数据可视化项目
  • 高中数学与初中数学的接轨点
  • 添加IIS出错,提示缺少CONVLOG.exe文件
  • SWIFT学习笔记05
  • 关于DEVMODE的数据结构--显示设备的属性(转)
  • 8-16 藏尾诗
  • 第七章 天国那边
  • CentOS7.3 部署 Zabbix V3.2
  • ASP.NET Web 服务器控件事件模型
  • 基于SmartThreadPool线程池技术实现多任务批量处理
  • 爱情四十七课,别拿爱解恨
  • 获取relatedTarget属性
  • 微信公众平台后台编辑器上线图片缩放和封面图裁剪功能
  • 时间复杂度分析经典问题——最大子序列和
  • __proto__ 和 prototype的关系
  • 2017前端实习生面试总结
  • docker-consul
  • JavaScript异步流程控制的前世今生
  • Java的Interrupt与线程中断
  • PHP 程序员也能做的 Java 开发 30分钟使用 netty 轻松打造一个高性能 websocket 服务...
  • python大佬养成计划----difflib模块
  • ReactNative开发常用的三方模块
  • vue和cordova项目整合打包,并实现vue调用android的相机的demo
  • 如何胜任知名企业的商业数据分析师?
  • 我感觉这是史上最牛的防sql注入方法类
  • # Swust 12th acm 邀请赛# [ A ] A+B problem [题解]
  • (4)Elastix图像配准:3D图像
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附源码)springboot社区居家养老互助服务管理平台 毕业设计 062027
  • (附源码)计算机毕业设计SSM在线影视购票系统
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (转)scrum常见工具列表
  • (转)菜鸟学数据库(三)——存储过程
  • (状压dp)uva 10817 Headmaster's Headache
  • **Java有哪些悲观锁的实现_乐观锁、悲观锁、Redis分布式锁和Zookeeper分布式锁的实现以及流程原理...
  • *Django中的Ajax 纯js的书写样式1
  • .java 指数平滑_转载:二次指数平滑法求预测值的Java代码
  • .NET Core跨平台微服务学习资源
  • .net Stream篇(六)
  • .Net Web窗口页属性
  • .NET 常见的偏门问题
  • .NET 中 GetProcess 相关方法的性能
  • .net连接oracle数据库
  • .NET学习教程二——.net基础定义+VS常用设置
  • /etc/fstab和/etc/mtab的区别
  • [ linux ] linux 命令英文全称及解释
  • [AutoSAR 存储] 汽车智能座舱的存储需求
  • [BZOJ] 1001: [BeiJing2006]狼抓兔子
  • [C#]winform制作仪表盘好用的表盘控件和使用方法
  • [C++]:for循环for(int num : nums)
  • [C++]STL之map
  • [Django 0-1] Core.Checks 模块