快速构建一个简单的个人框架系列(1)--FastObject介绍

哪个程序员没有一个梦?我的梦就是开发一个个人框架,轻量级,无需配置,功能强大但使用简单的 框架。

具体来说:

(1).配置简单,简单,很简单。(不要xml映射)

(2).轻量级, 很轻,很轻量。(学习成本一定要低)

(3).操作方便,很方便,很方便。(写框架就是要方便)

(4).数据库兼容,很兼容,很兼容。(至少要兼容Access和MSSQL)

岁月洗涤中,藉靠项目的经验,我终于痛定思痛写下了我的第一个Net2.0的框架--FastObject。

由于惯性和思维定势的影响,最后FastObject基本上算个7成的ORM框架,我很郁闷,我怎么就走不出 这个ORM呢?我真的很期待mssql和access是面向对象的数据库,面向c#的数据库。

人模自有人样,FastObject也自有自己的特点(面向中小型项目):

(1).执行sql语句,返回结果可以是无,单值,单个对象,对象集合(如int,User,List<User> )

(2).提供两种分页功能:简单分页,存储过程分页。

(3).兼容Access和Mssql数据库,可以一键切换。(本人独创!)

(4).使用FastObjectBase这一个类,使用起来太简单,太方便了。

其功能可以通过IFastObject窥见一斑:

using System;
using System.Collections.Generic;
using System.Text;

namespace FastObject
{
    public interface IFastObject
    {
        T GetSingleData<T>(string sql);//简单执行sql语句,增,删,改,查
        T GetModel<T>(string sql) where T : new();//获取单个实体
        void Para(params ParaInfo[] paras);//配置参数:Sqlparameter, OledbParameter等DbParameter
        List<T> GetModels<T>(string sql) where T : new();获取实体 集合
        List<T> GetModelsByPage<T>(string strWhere, int pageIndex,  int pageSize) where T : new();//简单分页
        List<T> GetModelsByPageStore<T>(string strWhere, string  strKey, string strOrder, int pageIndex, int pageSize) where T : new();//存储过程分 页,仅支持sqlserver
    }
}
/*说明:通过Para()方法我们简化了代码量的编写,减轻了工作量*/

时间: 2024-11-05 18:47:48

快速构建一个简单的个人框架系列(1)--FastObject介绍的相关文章

快速构建一个简单的个人框架系列(2)--FastObject架构(改进)

架构也谈不上,就是一个简单的几个类. 目前FastObject功能还很小,尤其是多表查询和数据库兼容还存在一定的问题. 我们先把这两个问题搁这儿: 1.数据库某些地方的兼容 2.多表查询 为了这两个问题,我对先前的结构做了稍微的修改,后面慢慢就会感觉到. 人活一口气,树活一张皮.虽然上篇文章<快速构建一个简单的个人框架系列(1)--FastObject介绍> 贴出后,经过大家的指点,凸显出太大的不足,但是已经写出来了,就是只剩一口气我也要把它写完,写 不完我也要玩着写,在此感谢提建议的朋友们,

快速构建一个简单的个人框架系列(3)--FastObject具体实现编码

前面说了那么多的不具体的想法和设计,今天我们就一个一个来实现它! 让我们一起来面对一个一个问题吧! 1.底层分别使用的是什么操作access数据库和sqlserver数据库的? 这个问题本是一个很麻烦的问题,我采用的是SqlHelper和AccessHelper,我也已经忘记了当初是从那 里下,在这里感谢原作者和汉化者. 2.你是如何把SqlDataReader和OleDbDataReader转换为T对象并自动赋值? 对于一个未知的实体类,想要向它的属性赋值,我用的是反射. DbDataRead

从零构建一个简单的 Python 框架

这篇文章旨在通过对设计和实现过程一步一步的阐述告诉读者,我在完成一个小型的服务器和框架之后学到了什么.你可以在这个代码仓库中找到这个项目的完整代码.我希望这篇文章可以鼓励更多的人来尝试,因为这确实很有趣.它让我知道了 web 应用是如何工作的,而且这比我想的要容易的多! 为什么你想要自己构建一个 web 框架呢?我想,原因有以下几点: 你有一个新奇的想法,觉得将会取代其他的框架 你想要获得一些名气 你遇到的问题很独特,以至于现有的框架不太合适 你对 web 框架是如何工作的很感兴趣,因为你想要成

通过Ionic构建一个简单的混合式(Hybrid)跨平台移动应用

通过Ionic构建一个简单的混合式(Hybrid)跨平台移动应用   介绍 自从混合式移动开发火起来之后,一部分Web工程师开始转战移动开发.混合式移动开发技术让Web工程师可以开发出各个平台的移动应用,而且不需要 学习各个平台的原生编程语言.现在已经有很多诸如PhoneGap和Titanium这些混合式开发平台来帮助我们进行混合式编程,今天我们要介绍的是一个相比之下更新的混合式移动开发平台Ionic. Ionic是一个高级HTML5混合式移动应用开发框架,同时也是一个开源的前端框架.Ionic

构建一个简单的演示应用程序Watson Films

本文将使用 Watson Question and Answer (Q&A) 技术和 Watson 所公开的 Q&A API 构建一个简单的演示应用程序 Watson Films.认知存在于人类所做的几乎任何活动中,比如语言理解.感觉.判断.运动技巧.学习.空间处理和社交行为.我们越来越期望所使用的机器能表现出相同的认知行为.IBM Watson 代表着向认知系统(一个新的计算时代)进军的第一步.除了使用编程计算,Watson 拥有 3 大让它变得真正独一无二的功能: 自然语言处理 假设生

php实现的一个简单json rpc框架实例

 这篇文章主要介绍了php实现的一个简单json rpc框架实例,本文给出了RPC服务端和客户端代码以及应用实例,需要的朋友可以参考下     json rpc 是一种以json为消息格式的远程调用服务,它是一套允许运行在不同操作系统.不同环境的程序实现基于Internet过程调用的规范和一系列的实现.这种远程过程调用可以使用http作为传输协议,也可以使用其它传输协议,传输的内容是json消息体. 下面我们code一套基于php的rpc框架,此框架中包含rpc的服务端server,和应用端cl

《Android游戏开发详解》一2.7 构建一个简单的计数程序

2.7 构建一个简单的计数程序 Android游戏开发详解在下一个示例中,我们将利用第1章中介绍过的for循环来打印出数字5到12之间的每一个偶数.这是一个简单的游戏示例,但是,掌握for循环语法的技巧很重要. 创建一个名为CountingProject的新的Java项目,并且创建一个名为EvenFinder的新类,添加程序清单2.7所示的main方法. 程序清单2.7 EvenFinder类 01 public class EvenFinder { 02 03 public static vo

《Android游戏开发详解》——第2章,第2.6节构建一个简单的计算器程序

2.6 构建一个简单的计算器程序Android游戏开发详解现在,我们已经尝到了甜头,让我们回过头来看看第1章介绍过的一些概念,并且构建一个简单的计算器程序.让我们给出一些动手实践的指导,来构建一个新的Java程序.请记住如下的主要步骤. ① 创建一个新的Java项目(将其命名为SecondProject). ② 在src文件夹中创建一个新的类(将其命名为SimpleCalculator). ③ 创建一个main方法. 如果任何时候你碰到困难,应该参考前面的小节.一旦按照上面的步骤进行,应该会看到

《Android游戏开发详解》一2.6 构建一个简单的计算器程序

2.6 构建一个简单的计算器程序 Android游戏开发详解现在,我们已经尝到了甜头,让我们回过头来看看第1章介绍过的一些概念,并且构建一个简单的计算器程序.让我们给出一些动手实践的指导,来构建一个新的Java程序.请记住如下的主要步骤. ① 创建一个新的Java项目(将其命名为SecondProject). ② 在src文件夹中创建一个新的类(将其命名为SimpleCalculator). ③ 创建一个main方法. 如果任何时候你碰到困难,应该参考前面的小节.一旦按照上面的步骤进行,应该会看