【转】制作.net实体类生成器(1)

目的:因为.NET2005代码重构功能中的封装字段,一次只能封闭一个字段,造成程序员某种程度上的重复性工作。
制作实体类生成器将要实现的功能:
可根据填写的类名,类说明,命名空间,字段的类型、属性名、备注,自动生成对应的代码。
制作工具:VS2005
制作语言:C#
制作平台:windows
制作步骤:
1)

2)

3)添加user类

4)右键》重构》封装字段

5)

用类似的方法封装name
6)
namespace classgenerate
{
    static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
            user u = new user();
            u.Id = 1;
            u.Name = "午夜未眠";
        }
    }
}
7)生成看看:


8)现想通过界面文本的输入使其自动生成似类于如下代码:
using System;
using System.Collections.Generic;
using System.Text;
/*
*作者:无声胜有声
* 时间:2009年9月20日
* 类说明:用户实体类
*/
namespace classgenerate
{
    /// <summary>
    /// 用户实体类
    /// </summary>
    public class user
    {
        private int id;
        /// <summary>
        /// 用户ID
        /// </summary>
        public int Id
        {
            get { return id; }
            set { id = value; }
        }
        private string name;
        /// <summary>
        /// 用户名字
        /// </summary>
        public string Name
        {
            get { return name; }
            set { name = value; }
        }
    }
}

9)根据界面的需要,拖入一些控件:

10)从公共控件中拖入:标签(label)、方文框(textbox)、单选按钮1(checked属性为可选true),单选按钮2(checked属性为false),从数据控件中拖入:datagridview用来设要封装的字段相关的信息,button1(生成实体类按钮)整理完毕,界面运行效果如下:

11)进一步优化界面:设置datagridview属性anchor为:top,bottom,left,right即上下左右跟随扩大或缩小,其name为:fdcontent(字段内容),button1的name为:btngenerate,命名空间文本框的name为:txtnamespace,两个单选按钮的name分别为:radyou,radwu,类说明文本框的name为txtexp(即说明单词前3个字母explanation),类名文本框的name为:txtclaname
12)点击datagridview的三角符号,然后选择添加列,输入相应的信息:


点击“添加”按钮即完成一个列的添加,用同样的方法进一步添加:名称为:type,类型选:datagridviewcombocolumn(即下拉框),页眉填:类型,再添加:名称为:remarks(备注的意思),类型:跟上图一样选文本框,页眉:填备注,完成点击关闭。
编辑“备注”列的属性将autosizemode设为fill

编辑“类型”列,设置字段的数据类型,items中点击collection在弹出对话框中填:int,string,float,double

时间: 2024-07-29 10:01:26

【转】制作.net实体类生成器(1)的相关文章

用C#做一个实体类生成器

问题描述 老师要我们效仿.Net代码生成器,做一个功能差不多的.我现在求那位大哥教我做怎么样生成实体类就够了.万分感谢!! 解决方案 解决方案二:帮顶,有一个代码生成器的原码解决方案三:代码生成器首先是为了生成特定的代码的,不是所有的操作都能完成的,所以呢一般都是先有一个基础的模板,然后生成的时候根据模板来进行一些改动.个人愚见,强忍别笑.呵呵解决方案四:使用CodeDOM和Emit吧网上的资料很多的呵呵祝好运!解决方案五:StreamcodeFile=File.Open(txt_TableCS

根据之前发的那SQL语句查询表结构的语句做了个MSSQL实体类生成器!

昨晚花了一晚上做的,整天用.NET用网站,突然想用WINFORM做个小玩意的,竟然发现好多东西都不会了...怎么在WINFORM里面下拉控件没有DataBind方法滴....嘿嘿... 整个生成器其实也没啥技术含量的,也就是文件IO流操作,向文本文件写入代码而已....软件界面如下图:    下面附上源码:,其实源码里有些地方还可以重构一下的,不过我这人懒...也就将就着吧..呵呵.. /Files/niunan/mssqlclassgen.rar   

在link中,用codefirst制作权限管理系统,需要定义哪些实体类?

问题描述 在link中,用codefirst制作权限管理系统,需要定义哪些实体类? 在link中,用codefirst制作权限管理系统,需要定义哪些实体类? 解决方案 一般是分成用户.角色.权限三个表 权限描述每一个能操作不能操作的项目 角色包含可以操作的权限 用户包含它对应的角色

在Entity“.NET研究” Framework 4中映射现有实体类(POCO)

Entity Framework的全称是ADO.NET Entity Framework,是微软开发的基于ADO.NET的ORM(Object/Relational Mapping)框架. Entity Framework的主要特点: 1. 支持多种数据库(Microsoft SQL Server, Oracle, and DB2): 2. 强劲的映射引擎,能很好地支持存储过程: 3. 提供Visual Studio集成工具,进行可视化操作: 4. 能够与ASP.NET, WPF, WCF, W

hql语句查询实体类News的属性category为“生活类新闻”的LIST,HQL语句怎么写?

问题描述 hql语句查询实体类News的属性category为"生活类新闻"的LIST,HQL语句怎么写? 用SSH框架,写一个实现类,查询实体类News的属性category为"生活类新闻"的LIST 返回一个LIST,该怎么写???????????????????? 实体类为News 属性为category 数据库中表名为t_news category为属性 import java.util.List; import org.springframework.st

hashmap-ListView 里面嵌套了一层ListView 如何写实体类呢

问题描述 ListView 里面嵌套了一层ListView 如何写实体类呢 左边的是别人用HashMap写的 右边是我想换成封装成实体类的时候 提示不能获取id 请问如何获取呢

ssh框架web,自动生成hbm.xml和实体类

问题描述 ssh框架web,自动生成hbm.xml和实体类 ssh框架web,数据库由MySQL变oracle,myeclipse自动生成hbm.xml和实体类,Injection of resource dependencies failed.org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'BHZControl': Injection of resource depe

.net中如何给数据表实体类赋值的方法

数据 今天遇到一个问题,就是数据实体类中如何给属性赋值.因为从数据库中取出来的是一个DataSet如果一个一个给数据实体类中的属性赋值显的非常的笨拙,而且我们的数据表多达24个.在网上搜索了下写出了个简单的方法,代码如下: 首先我们做个实体类  1     public class Class1 2     { 3         private int inttemp; 4  5         public int IntTemp 6         { 7             get

掌握 ASP.NET 之路:自定义实体类简介

asp.net 摘要:有些情况下,非类型化的 DataSet 可能并非数据操作的最佳解决方案.本指南的目的就是探讨 DataSet 的一种替代解决方案,即:自定义实体与集合.(本文包含一些指向英文站点的链接.) 本页内容引言 DataSet 存在的问题 自定义实体类 对象关系映射 自定义集合 管理关系 高级内容 小结 引言ADODB.RecordSet 和常常被遗忘的 MoveNext 的时代已经过去,取而代之的是 Microsoft ADO.NET 强大而又灵活的功能.我们的新武器就是 Sys