惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

小众软件
小众软件
IT之家
IT之家
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Security Archives - TechRepublic
Security Archives - TechRepublic
P
Proofpoint News Feed
C
CERT Recently Published Vulnerability Notes
阮一峰的网络日志
阮一峰的网络日志
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
P
Palo Alto Networks Blog
Know Your Adversary
Know Your Adversary
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Cisco Talos Blog
Cisco Talos Blog
L
Lohrmann on Cybersecurity
AWS News Blog
AWS News Blog
J
Java Code Geeks
博客园_首页
Scott Helme
Scott Helme
WordPress大学
WordPress大学
有赞技术团队
有赞技术团队
T
The Exploit Database - CXSecurity.com
Security Latest
Security Latest
V
Visual Studio Blog
Cloudbric
Cloudbric
Jina AI
Jina AI
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
博客园 - 叶小钗
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 聂微东
人人都是产品经理
人人都是产品经理
A
Arctic Wolf
C
Cybersecurity and Infrastructure Security Agency CISA
S
SegmentFault 最新的问题
The Last Watchdog
The Last Watchdog
SecWiki News
SecWiki News
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
W
WeLiveSecurity
K
Kaspersky official blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Hacker News: Ask HN
Hacker News: Ask HN
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
宝玉的分享
宝玉的分享
Hugging Face - Blog
Hugging Face - Blog
量子位
Google Online Security Blog
Google Online Security Blog
博客园 - Franky
Simon Willison's Weblog
Simon Willison's Weblog
博客园 - 三生石上(FineUI控件)
Recent Commits to openclaw:main
Recent Commits to openclaw:main

博客园 - spdevelop

带有智能完成功能的万能查询分析器的开发心得 SpDevelop模版开发 之 Hello world - spdevelop SpDevelop V3.0发布 中国代码日志(www.Cnclog.com)正式开通! SpDevelop 数据库建模软件 终于把.Net的大部分开源项目整理出来 软件发布 SpDevelop混淆器(.Net版本) 计算机软件著作权登记办法 互联网著作权行政保护办法 GNU宣言 BSD许可问题 软件分类(自由软件、开放源代码软件、公共软件......) 有关开放源代码软件与商业软件知识产权的研究报告(上) 有关开放源代码软件与商业软件知识产权的研究报告(中) 有关开放源代码软件与商业软件知识产权的研究报告(下) 商业周刊:开源代码趋成熟 开源软件与商业软件知识产权报告全文 .net 技术站点
数据实体层介绍
spdevelop · 2006-07-19 · via 博客园 - spdevelop

   数据实体层用于封装实体类数据结构,一般用于映射数据库的数据表或视图,用以描述业务中客观存在的对象。
      一般来说设计数据实体层时,大家一般有以下选择。
      1、DataSet
      2、XML
      3、使用XML作为数据结构来源,来生成的统一业务实体类。
      4、可序列化的业务实体类。
      5、可序列化的,带一般CRUD操作的业务实体类。
      前二种太简单,这里不一一叙述了。
      第三种就是写一个复杂的统一的业务实体类,这个类主要是读取指定的XML文件,生成相应的业务实体类。利用常用的数据库

工具,将现有的数据库结构导出为XML文件,并放入指定的位置。程序则读取XML,并生成相应的DataSet用于操作。优势在于,程序

与数据库完全分离,只与相应的XML文件相关,因此独立性强。不利的一面则是此类要考虑的事情实在是太多,要想完全实现可复用

的组件则需花费大量的时间。而且,对配置管理要求很严格,主要是XML和数据库的一致性上。如果更新了数据库而忘了更新XML,

呵呵,后果可想而知。还有就是系统开销变大,对性能有一定的影响。(网上有些例子,大家可以参考)
      第四种实现比较容易,但是对于一般项目而言工作量大,不过使用Spdevelop可以轻松的帮您在1秒内完成本项工作,减少工

作量。生成的实体如下:


using System;
using System.Data.SqlClient;
namespace Spdevelop.Model
{
    
    /// <summary>     
    /// 角色
    /// </summary>
    public class Role
    { 
        /// <summary>
        /// 
        /// </summary>
        public Role()
        {
        }
        /// <summary>     
        /// 
        /// </summary>
        public Role(Int32 rid)
        {
            this.rid = rid;
        
        }
        /// <summary>     
        /// 
        /// </summary>        
        public Role(SqlDataReader dr)
        {
            this.rid = Convert.ToInt32(dr["rid"]);
            this.name = Convert.ToString(dr["name"]);
            
        }
        
        
        
        #region Rid
        private Int32 rid;
        /// <summary>     
        /// 角色编号
        /// AutoInc
        /// PK
        /// </summary>
        public Int32 Rid
        {
            get{ return rid; }
            set{ rid= value; }
        }
        #endregion
        
        #region Name
        private System.String name;
        /// <summary>     
        /// 角色名称
        /// </summary>
        public System.String Name
        {
            get{ return name; }
            set{ name= value; }
        }
        #endregion

        
    }
}


     查看详细模板 www.spdevelop.com
 
     第五种则是在第四种上加入了基本的CRUD操作。