pdf.net sod oracle,SOD: 原PDF.NET框架将成为一个全功能的企业开发框架,而 SOD框架将是PDF.NET开发框架下面的 “数据开发框架...
Beginner:How to use Entity Framework? SOS!
Senior men:Try using the SOD Framework!
菜鸟:怎么使用EF框架啊?遇到麻烦了,救命!
老鸟:试试SOD开发框架!
Still using EF and get stuck? Why not release yourself and try SOD!
It is easy, and simple.
一直使用EF并且老是遇到麻烦?何不解放自己并且试试SOD框架呢!
它是简单的,并且容易使用的,轻量级的框架。
SOD not only a ORM framework,include SQL-MAP,DataControls,detai ,but it is a light weight framework . see [url:this page. |http://www.pwmis.com/sqlmap]
SOD 不仅仅是一个ORM框架,还包括 SQL-MAP,DataControls,但它却是一个非常轻量级的框架。了解更多,看[url:这里。 |http://www.pwmis.com/sqlmap]
Learning more,see [url:this page. |https://pwmis.codeplex.com/wikipage?title=Framework%20details&version=2]
要了解更多,请看[url:这篇文章 |https://pwmis.codeplex.com/wikipage?title=Framework%20details&version=2]
下面一个简单的SOD框架ORM使用的实例:
在开始工作之前,先建立一个控制台项目,然后在程序包管理控制台,添加SOD框架的Nuget 包:
{{
Install-Package PDF.NET
}}
这样即可获取到最新的SOD框架包并且添加引用,然后,就可以开始下面的工作了。
已经建立好的当前Demo程序下载,[url:看这里 |http://pwmis.codeplex.com/downloads/get/1522232]
1,首先建立一个实体类:
{code:c#}
public class User : EntityBase
{
public User()
{
TableName = "Tb_User";
IdentityName = "UserID";
PrimaryKeys.Add("UserID");
}
public int ID
{
get { return getProperty("UserID"); }
set { setProperty("UserID", value); }
}
public string Name
{
get { return getProperty("Name"); }
set { setProperty("Name", value, 50); }
}
public string Pwd
{
get { return getProperty("Pwd"); }
set { setProperty("Pwd", value, 50); }
}
}
{code:c#}
2,然后建立一个 DbContext:
{code:c#}
class LocalDbContext:DbContext
{
public LocalDbContext()
: base("local")
{
//local 是连接字符串名字
}
protected override bool CheckAllTableExists()
{
//创建用户表
CheckTableExists();
return true;
}
}
{code:c#}
3,修改下App.config 文件的连接配置:
{code:xml}
{code:xml}
providerName 是SOD框架提供的驱动程序,可选的内容有:
Access
SqlServer
Oracle
SqlCe
OleDb
Odbc
如果是其它的扩展程序集,那么providerName应该写成下面的形式:
{{
providerName="PWMIS.DataProvider.Data.OracleDataAccess.Oracle,PWMIS.OracleClient"
}}
其中,“,”号前是驱动程序类型的全名称, “,”号后是驱动程序所在的程序集名称,要求该程序集必须放到 跟PWMIS.Core.dll 同一个目录下,且是同一个兼容版本。
有关数据库连接配置的详细内容,请参考:[2.2.3 扩展数据访问类配置]
4,然后,像下面这样使用,即可自动创建数据库和表,并且添加一条初始数据:
{code:c#}
//创建数据库和表
LocalDbContext context=new LocalDbContext();
//重新指定主键,删除旧的测试数据
User oldUser = new User();
oldUser.PrimaryKeys.Clear();
oldUser.PrimaryKeys.Add("Name");
oldUser["Name"] = "zhang san"; //索引器使用
int count= context.Remove(oldUser);
User zhang_san = new User() { Name = "zhang san", Pwd = "123" };
count = context.Add(zhang_san);//采用 DbContext 方式插入数据
{code:c#}
当然插入数据的方式很多,具体请看本文提供的源码下载。
5,最后,像下面这样使用查询即可:
{code:c#}
User user = new User() { Name = "zhang san" };
OQL q = OQL.From(user)
.Select()
.Where(user.Name)
.END;
PrintOQL(q);
List users = EntityQuery.QueryList(q);
{code:c#}
这种方式适合简单的相等条件查询,如果需要复杂的条件,可以修改成下面这个样子:
{code:c#}
//示例:采用操作符重载写比较条件
User user = new User();
OQL q = OQL.From(user)
.Select()
.Where(cmp => cmp.Property(user.Name) == "zhang san")
.END;
PrintOQL(q);
//使用扩展方法 using PWMIS.Core.Extensions;
List users = q.ToList();
{code:c#}
示例代码中的 可以修改成 >,
如果需要更多条件,可以使用 &表示SQL的AND,| 表示 SQL的OR 逻辑关系,比如:
{code:c#}
//示例:采用操作符重载写比较条件
User user = new User();
OQL q = OQL.From(user)
.Select()
.Where(cmp => cmp.Property(user.Name) == "zhang san"
& cmp.Comparer(user.Pwd ,"=","123") )
.END;
PrintOQL(q);
//使用扩展方法 using PWMIS.Core.Extensions;
List users = q.ToList();
{code:c#}
实际上,框架提供了至少6种查询方式,详细内容,请看Demo程序下载,[url:看这里 |http://pwmis.codeplex.com/downloads/get/1522232]
附注:
{code:c#}
private static void PrintOQL(OQL q)
{
Console.WriteLine("OQL to SQL:\r\n{0}", q.ToString());
Console.WriteLine("SQL Parameters:\r\n{0}", q.PrintParameterInfo());
}
{code:c#}
该方法可以打印OQL的SQL和参数信息,为你调试代码带来方便。
这样,一个简单的ORM使用实例就做好了。上面这段ORM例子,不仅仅适用于Oracle,使用在其它数据库都是可以得,只需要修改 连接字符串配置的 providerName和 connectionString 即可。
详细可以参考 [url: Oracle 免费的数据库--Database 快捷版 11g 安装使用与"SOD框架"对Oracle的CodeFirst支持 |http://www.cnblogs.com/bluedoctor/p/4359878.html]
pdf.net sod oracle,SOD: 原PDF.NET框架将成为一个全功能的企业开发框架,而 SOD框架将是PDF.NET开发框架下面的 “数据开发框架...相关推荐
- 机器人点焊枪接线_全功能自动焊枪清枪站安装操作说明书.PDF
全功能自动焊枪清枪站安装操作说明书 全功能版自动焊枪清枪站 安装操作说明书 上海倍吉电子科技 上海市嘉定区马陆工业园丰饶路 505 号 电话:02150116525 传真:021 网址: 1 / 23 ...
- PDF.NET数据开发框架实体类操作实例(for PostgreSQL,并且解决自增问题)
PDF.NET数据开发框架实体类操作实例(MySQL) 的姊妹篇,两者使用了同一个测试程序,不同的只是使用的类库和数据库不同,下面说说具体的使用过程. 1,首先在App.config文件中配置数据库连 ...
- PDF.NET 数据开发框架
欢迎使用 PDF.NET 数据开发框架 (Ver 4.0) 关于框架的名字由来 在我设计www.pwmis.cn 站点(原域名已经过期,现在正准备使用新域名http://www.pwmis.com/ ...
- rabbitmq实战指南 pdf_企业服务智能用户运营实战指南.pdf
原标题:企业服务智能用户运营实战指南.pdf 有人曾说 2015 年是 SaaS 元年,在那之后国内的企业服务公司,如雨后春笋般涌现, 这几年在这个赛道我们看到了很多优秀的公司涌现,也有一些产品消失在 ...
- 删了手机里的一个html文件,手机操作篇:手机上怎么删除pdf其中一页
原标题:手机操作篇:手机上怎么删除pdf其中一页 怎么删除pdf其中一页?这个问题难倒了很多的人,这里,小编提供了一个既简单又实用的方法.那就是教大家手机上怎么删除pdf其中一页. 1.有两个准备工作 ...
- PDF.NET数据开发框架操作MySQL实体类操作实例
在我们最近的项目中,SQL-MAP使用较多,但是实体类用的很少,实际上,"PDF.NET数据开发框架"的实体类相当强大,下面的测试程序是在MySQL中操作的实例. 1,首先在App ...
- 【干货】2021中国“企服企业”规模化获客体系建设指南.pdf(附下载链接)
省时查报告-专业.及时.全面的行研报告库 省时查方案-专业.及时.全面的营销策划方案库 大家好,我是文文(微信号:sscbg2020),今天给大家分享神策研究院和红杉资本联合发布的报告<2021 ...
- 如何在功能、特点、价格和性能方面选择PDF编辑器?
PDF格式.PDF (Portable Document Format) 可移植文档格式"的缩写,最初由 Adobe Systems 创建,用于交换和分发具有复杂格式的文档.它有两大优势 ...
- vue 项目中分别使用 vue-pdf 插件和内嵌 iframe 实现 PDF 文件预览,缩放,旋转,下载,保存等功能 ?
需求:在 vue 和 element-ui 项目中,有点击按钮预览,下载,打印 PDF 文件 需求,要求支持 PDF 的预览,上下页切换,首尾页切换,页码选择跳转,放大缩小,顺时针逆时针旋转,下载, ...
最新文章
- Rank() over()的用法
- 服务器端开发经验总结 Linux C语言
- 解读丨从自动驾驶到学习机器学习:科技发展的15大趋势
- set Autotrace的使用
- java android 数组_Android开发基础之Java 数组
- python基础-函数之装饰器、迭代器与生成器
- 一个神奇的???whatever~~
- PR第三次培训笔记(视频效果 转场)
- 【H5】 svg的 defs用法 渐变
- 移动硬盘读取速度突然变慢?教你7个方法解决
- 【推理引擎】ONNXRuntime 的架构设计
- css写阴影颜色渐变,css3——阴影(立体感,层次效果),渐变色按钮
- 图灵书籍源码下载地址
- linux 源码安装7za
- 学原油期货买什么书(怎么样买原油期货)
- WPF教程(六)二进制资源
- ARM学习之汇编的学习
- 移动APP设计国外资源总汇
- java ee 结构图_J2EE领域的一些技术框架结构图
- OneClock - 不仅仅是桌面极简翻页时钟
热门文章
- 钱钟书是怎样做读书笔记的
- 用javascript编写的地址二级联动
- spss常态检验_【单选题】SPSS 软件中进行数据描述、 t 检验等分析的菜单是( )。
A. 文件 B. 数据 C. 转换 D. 分析...
- c#实现SharedMatting抠图算法
- 分享具体制作流程,利用下班时间听歌,昨天挣了400多
- java中给数组添加值的方法
- 关于“与google服务器通信时出现问题“
- 分享几段祖传的Python代码,拿来直接使用
- 接招吧,最强“高并发”系统设计 46 连问,分分钟秒杀一众面试者
- 声网-本地视频录制sdk配置说明