C# Entity Framework如何配置存储过程调用
来源:互联网 发布:网上学编程 编辑:程序博客网 时间:2024/06/14 03:23
Entity Framework机制很方便的使用表和视图,但是针对一些复杂的业务逻辑,他就有点处理性能低下了。
下面是在项目中使用到Oracle 存储过程调用的步骤:开发平台VS2012+Oracle11g。
目前的报表开发流程统一如下,
1. 定义好存储过程和他指针输出以来的视图对象。
完成包含报表逻辑的视图或者存储过程,测试没有问题,输出的列名和类型完全符合需求上的定义。
2. 创建一张存储过程对于数据集的报表,主要用来存储用来做报表功能模块的数据集,数据库定期处理,导入当天处理完成的数据到报表数据表。
从视图 或者存储过程中将结果集导入到新表中,并建立主键,触发器,lastmodified,以及将查询条件中所用到的所有字段,加上索引。
3. 使用自己编写的XMLReplace类库对Entity Framework生产的模板类的所有实体类进行替换处理,已经动态添加存储过程对应的Function。
使用上在代码成,将Oracle 存储过程添加到Entity Framework机制下的 函数功能。
注意:这里添加的Function必须与Oracle Procedure 拥有相当的输入和输出参数,以及参数对于的类型。
这个XMLReplace功能实际上还有处理类名的作用:如在Oracle中TBL_CLAIM表,进行Replace处理之后,在代码中生成CLAIM 实体类。另外Entity Framework会生成实体类对于的所有外键实体类的对应关系。如TBL_STUDENT有FK_CLASS_ID,除了拥有CLASS_ID这个字段,将还会拥有CLASS实体对象的属性。
4. 建TBL_report_对应的specification文件,其泛型参数类型就是新表的类型。
备注:specification文件,时间上就是Linq查询的组合文件,就像摸个查询中拼接所有查询字段的结果,实际上就是sql where 后面的查询语句,最后可在Linq调用数据中的解析文件中看到。
5. 绑定到UI。在页面上调用查询,生成specification,组装分页和排序条件后,返回结果集,传到页面的flexgrid。
这里是采取的Jquery + handle class (ashx.cs)的组合,调用$.ajax方法,success时将返回的数据集绑定到 Jquery flexgrid控件中。
[备注]Jquery flexgrid;Javascript To Json;Ajax+Web service。
[总结]以上是开发流程。具体细节可查网上相关资料。
Entity Framework调用存储过程之类的。
- C# Entity Framework如何配置存储过程调用
- Entity framework调用存储过程,事务问题
- MVC学习笔记四:利用Entity Framework调用存储过程
- MVC学习笔记四:利用Entity Framework调用存储过程
- ASP.NET 4.0 与 Entity Framework 4-第三篇-使用Entity Framework调用存储过程
- Entity Framework 4-第三篇-使用Entity Framework调用存储过程
- Entity Framework如何获取存储过程中的output参数
- C#如何调用存储过程
- C#如何调用存储过程
- C#如何调用存储过程
- Entity Framework 执行sql语句 存储过程
- ADO.NET Entity Framework调用存储过程中碰到的问题
- 如何在C#中调用存储过程
- Entity Bean:JPA调用存储过程[转]
- C#调用存储过程
- C#调用存储过程
- C#调用存储过程
- C#调用存储过程
- Android Audio System 之三: AudioPolicyService 和 AudioPolicyManager
- 【小蒙淘金】11.30早间金银行情分析及部分操作建议
- 【转】企业级搜索引擎Solr 第三章 索引数据
- Android 反编译APK【教程+工具】【全】
- java.lang.OutOfMemoryError: Java heap space解决方法
- C# Entity Framework如何配置存储过程调用
- Linux命令nohup+screen
- 三十岁:如何积累人脉
- mysql构建表格
- CSS架构目标:预测、重用、扩展、维护
- 【转】同时启动2个tomcat注意
- C++中explicit关键字的作用
- 第十四周项目3 成绩处理第二季
- android 开发学到的语法。不断积累