在代码生成工具Database2Sharp中使用ODP.NET(Oracle.ManagedDataAccess.dl
<p>由于我们开辟的辅助工具Database2Sharp必要支持多种数据库,固然我们一样平常使用SQLServer来开辟应用较多,但是Oracle等其他数据库也是常用的数据库之一,因此也是支持使用Oracle等数据库举行代码的快速生成。在此之前我不绝要求用户使用代码生成工具的时间,如果使用Oracle开辟,则需在开辟情况中安装Oracle客户端,以便继承使用微软的System.Data.OracleClient方式访问Oracle,不过如许开辟情况就会贫苦一些。别的还带来一个题目,使用这些驱动的时间,由于系统的限定,还会区分32位大概64位的题目,不能实现兼容性的访问。为了彻底办理这个题目,我们使用ODP.NET(Oracle.ManagedDataAccess.dll)访问Oracle数据库,实现免安装Oracle客户端,兼容32位64位Oracle驱动。</p><h3>1)代码生成工具先容</h3>
<p>Database2Sharp是一款代码生成工具和数据库文档生成工具,该工具从2005年开始至今,不绝伴随着我们的客户和粉丝们履历着过各种各样的项目开辟,在实际开辟中能带来服从的进步及编程的快乐。</p>
<p>Database2Sharp是一款告急用于C#代码生成以及数据库文档生成的工具,软件支持Oracle、SqlServer、MySql、PostgreSQL、Sqlite、Access以及国产达梦等数据库的代码生成,可以生成各种架构代码、生成Winform界面代码、Web界面代码(包罗EasyUI和BootstrapWeb界面)、Entity Framework实体框架代码、导出数据库文档、欣赏数据库架构、查询数据、生成Sql脚本等,还整合自界说模板和数据库信息的引擎,方便编写自界说模板调试和开辟。生成的框架代码支持多种数据库一起使用,也支持差别业务的数据库切割为多个库举行使用,是一种适应性非常强、弹性很好的应用框架。</p>
<p>Database2Sharp保举采取软件功能“<strong>Enterprise Library</strong><strong>代码生成”</strong>来生成项目代码,这个架构体系生成整个项目工程框架,包罗实体类、数据访问类、业务类、Web页面代码、WCF相干服务层(可选)、Web API服务层(可选),以及各种服务的调用包装层代码等。该架构使用泛型及缓存机制,良好的架构极大简化代码,强大美满的基类机制使您以致不消编写一行代码就能顺遂运行。一个简朴点击频频鼠标就能完成一周代码量的代码生成工具,服从惊人、友爱体贴,真正的开辟好伴侣。</p>
<p>固然,开辟的过程是一个繁复、风雅的过程,因此Database2Sharp也汲取了来自我们本身的实际需求,以及许多同仁朋侪的宝贵意见,不绝在改进,不绝积极做到更好,以求到达一个更加完善、更加易用的境界。</p>
<p>在我们开辟软件的时间,办理方案项目基于肯定的分层构造,每个项目分层中,各个类的关系也是确定的,借助辅助工具(团结模板引擎)可以快速生成我们所必要的代码,并极大进步我们软件的开辟服从,Database2Sharp代码生成工具就是一款专门针对我们本身框架结构配套的开辟工具。</p>
<p>Database2Sharp代码生成工具,告急是基于数据库提取的元数据信息,根据表的信息和关系,字段信息等内容,生成我们框架所必要分层的类代码。</p>
<p>对于Winform开辟,可以根据Winform框架大概混合框架的窗体界面类,生成尺度的界面代码,列表界面默认具有分页查询、导入导出、高级查询、编辑、删除事件绑定,编辑界面则具有获取数据并体现在控件,生存后实验更新大概写入的操纵。</p>
<p>对于Web开辟,可以根据EasyUI控件界面大概Bootstrap控件界面的差别,生成对应的视图HTML代码和控制器类代码,同时这些界面默认也具有分页查询,导入导出,体现明细和生存数据的功能。</p>
<p>软件告急界面如下所示。</p>
<p></p>
<p> </p>
<h3>2、代码生成工具中使用ODP.NET(Oracle.ManagedDataAccess.dll)访问Oracle数据库</h3>
<p>起首通过Nugget步伐包下载一个Oracle.ManagedDataAccess.dll的文件,然后举行使用即可,颠末测试使用这个类库,可以无视数据库系统的位数,最告急的是镌汰了Oracle客户端的安装。</p>
<p>为了和原有的系统支持的OracleClient实现区分,以便继承保存原有方式的处理处罚,那么我们增长一个特别的OracleManaged类实现Oracle元数据的处理处罚即可。</p>
<p></p>
<p> </p>
<p> 应用这个Oracle.ManagedDataAccess方式,相对于OracleClient方式,我们险些不消变革任何对象的名称,只是换了一个定名空间而已,根本实现完全兼容。</p>
<p>有了这个获取数据的方式,固然必要对数据设置的界面增长一个OracleManaged的对应方式了,由于Oracle.ManagedDataAccess和OracleClient的毗连字符串有所差别的。</p>
<p>前者Oracle.ManagedDataAccess的毗连字符串变为:</p>
Data Source=(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl.mshome.net)
)
);User ID=win;Password=win
<p>依照这个设置的参数我们修改下Oracle数据库毗连字符串的设置界面如下:</p>
<p></p>
<p> </p>
<p>其中我们对于Oracle毗连字符串形貌部门,提示参考PLSQL Developer内里【资助】【支持信息】 【TNS名称】的对应部门即可,如下所示。</p>
<p></p>
<p> </p>
<p> </p>
<p> </p>
<p> 有了这些设置信息,我们就可以不管服务端大概当地的Oracle版本是32位的还是64位的,实现全部兼容,而且如果客户端没有安装Oracle客户端,还是可以访问Oracle服务端的数据的。</p>
<p>运行代码生成工具,可以得到Oracle的数据表等信息,可以在Oracle情况下,无需安装Oracle客户端,顺畅使用代码生成工具举行代码的开辟工作了。</p>
<p></p>
<p> </p>
页:
[1]