先看一眼代码:

using System;
using System.Collections.Generic;
using XCode;
using XCode.Configuration;
using XCode.DataAccessLayer;

namespace RandomInsert
{
    internal class Program
    {
        ;
        private static void Main(string[] args)
        {
            Console.WriteLine("开始");
            FillDataForDb("demo");
            Console.WriteLine("完成");
        }

        /// <summary>
        ///  随机填充指定数据库连接字符串中的所有表
        /// </summary>
        /// <param name="connStr">数据库连接字符串</param>
        public static void FillDataForDb(string connStr)
        {
            DAL dal = DAL.Create(connStr);//根据数据库连接字符串创建数据访问对象
            List<IDataTable> tableList = dal.Tables;//获取数据库的所有表和架构信息
            if (tableList == null)
            {
                Console.WriteLine("没有表结构");
                return;

            }
            tableList.RemoveAll(t => t.IsView);//过滤掉视图
            foreach (var item in tableList)
            {
                //首先根据表名称获取当前表的实体操作接口
                IEntityOperate entity = dal.CreateOperate(item.Name);
                //entity.BeginTransaction();事务暂时不启用
                ; i < NeedCount; i++)
                {
                     == ) { Console.WriteLine("{0}{1}", item.TableName, i); }
                    IEntity model = entity.Create();//创建数据实体接口
                    //entity.Fields获取所有的字段信息
                    foreach (var fild in entity.Fields)
                    {
                        if (!fild.IsIdentity)
                            model.SetItem(fild.Name, GetRandomValue(fild));
                    }
                    model.Save();//保存数据
                }
                //entity.Commit();
            }
        }
        /// <summary>
        /// 根据字段类型和长度获取对应类型的随机数据
        /// </summary>
        /// <param name="fild">字段对象</param>
        /// <returns>对应的随机数据</returns>
        public static object GetRandomValue(FieldItem fild)
        {
            switch (Type.GetTypeCode(fild.Field.DataType))
            {
                case TypeCode.Boolean:
                    return RandomHelper.GetRandomBool();
                case TypeCode.Byte:
                    return RandomHelper.GetRandomByte();
                case TypeCode.Char:
                    return RandomHelper.GetRandomChar();
                case TypeCode.DateTime:
                    return RandomHelper.GetRandomDateTime();
                case TypeCode.Decimal:
                    , NeedCount * 10.1);
                case TypeCode.Double:
                    , NeedCount * 10.1);
                case TypeCode.Int16:
                    , int.MaxValue);
                case TypeCode.Int32:
                    , NeedCount * );
                case TypeCode.Int64:
                    , NeedCount * );
                case TypeCode.SByte:
                    , );
                case TypeCode.Single:
                    , NeedCount * 10.1);
                case TypeCode.String:
                    return RandomHelper.GetRandomString((int)(fild.Length * RandomHelper.GetRandomDouble(0.2, 0.7)));
                case TypeCode.UInt16:
                    return RandomHelper.GetRandomInt(int.MinValue, int.MaxValue);
                case TypeCode.UInt32:
                    , NeedCount * );
                case TypeCode.UInt64:
                    , NeedCount * );
                case TypeCode.Empty:
                case TypeCode.Object:
                case TypeCode.DBNull:
                    return string.Empty;
                default:
                    return string.Empty;
            }
        }
    }
}

本段代码由大石头提供技术支持,小董原创,老邱完成,ha666抄过来。

VS2013Update5就有“性能和诊断”功能了

选择“调试”菜单->“性能和诊断”

欢迎加QQ群(1600800)讨论。

VS自带的功能:性能和诊断的更多相关文章

  1. MySQL 5.7 学习:功能性能的提升

    背景: 继上次介绍 初识 MySQL 5.6 新功能.参数完之后,刚好MySQL 5.7又GA了,在官方测试里看到,MySQL5.7在功能.性能.可用性.安全和监控上又提升了很高.现在看看和MySQL ...

  2. (转载)Java自带的GUI性能监控工具Jconsole以及JisualVM简介

    原文链接:http://blog.csdn.net/chendc201/article/details/22905503 1 Jconsole 1.1 简介以及连接 JConsole是一个基于JMX的 ...

  3. 百度地图API 批量添加 带检索功能的信息窗口

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. Elastic Image Slider 带缩略图功能的幻灯片

    今天我们要为您展示如何创建一个简单的弹性幻灯片,带有缩略图预览功能.Elastic Image Slider 这款幻灯片能够自动调整以适应到其父容器,我们可以通过幻灯片使用缩略图预览或幻灯片的自动播放 ...

  5. 笔记本自带 WiFi 功能

    在寝室,动网速基本崩溃.平时打电话什么的都得到阳台,有时候还听不清声音.对于学校的环境,我不说什么了. 笔记本可以上网,那就要满足手机等移动电子设备上网的上网需求. WiFi 热点就显得尤为重要了. ...

  6. GridView使用自带分页功能时分页方式及样式PagerStyle

    // 转向地址:http://www.bubuko.com/infodetail-412562.html GridView分页,使用自带分页功能,类似下面样式: 在aspx页面中,GridView上的 ...

  7. 基于jQuery带备忘录功能的日期选择器

    今天给大家分享一款基于jQuery带备忘录功能的日期选择器.这款日期控制带有备记忘录功能.有备忘录的日期有一个圆圈,单击圆圈显示备忘录.该实例适用浏览器:360.FireFox.Chrome.Safa ...

  8. 调用Android自带日历功能(日历列表单、添加一个日历事件)

    调用Android自带日历功能  觉得这篇文章不错,转载过来. 转载:http://blog.csdn.net/djy1992/article/details/9948393 Android手机配备有 ...

  9. SSIS从理论到实战,再到应用(6)----SSIS的自带日志功能

    原文:SSIS从理论到实战,再到应用(6)----SSIS的自带日志功能 上期回顾: SSIS从理论到实战,再到应用(5)----流程控制之Foreach循环 博主最近新负责了一个ssis大项目的架构 ...

随机推荐

  1. 用ChooseALicense帮自己选一个开源license,然后用AddALicense给自己的github自动加上license文件

    在我之前的一篇博客里面介绍过tl;drLegal ——开源软件license的搜索引擎,可以很方便的查询各种license,并且给出了很简洁的解释.今天又发现了另外一个帮助你选择你的开源软件licen ...

  2. Delphi ListView基本用法大全

    //增加项或列(字段) ListView1.Clear; ListView1.Columns.Clear; ListView1.Columns.Add; ListView1.Columns.Add; ...

  3. Spring AOP + AspectJ Annotation Example---reference

    In this tutorial, we show you how to integrate AspectJ annotation with Spring AOP framework. In simp ...

  4. java面试32问

    第一,谈谈final, finally, finalize的区别. 第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements ...

  5. hihocoder 北大网络赛 E.

    给一个1000个点的多边形(从某个点依次按照外形给出每个节点),这个多边形不一定是凸多边形 再给一个圆,问这个多边形与圆相交区域的周长 我们将这个问题分成两个部分,第一部分是求线段在圆内的长度,第二部 ...

  6. noi1816 画家问题(技巧搜索Dfs)

    /* Problem 画家问题 假设一个ans数组存的是对每一个点的操作 0表示不图 1表示图 那么 对于原图 g 操作第三行时对第一行没有影响 同样往下类似的 所以 假设我们知道了ans的第一行就是 ...

  7. 17、SQL Server 备份和还原

    SQL Server 备份 恢复模式 SQL Server 数据恢复模式分为三种:完整恢复模式.大容量日志恢复模式.简单恢复模式. 完整恢复模式 默认的恢复模式,它会完整记录下操作数据库的每一个步骤, ...

  8. Adb工具常用操作(一)

    一.启动或关闭server 1.3  Android SDK中的常用命令行工具 在<Android SDK安装目录>\tools目录中带了很多命令行工具.虽然一般的开发人员并不需要完全掌握 ...

  9. object标签参考(转载)

    <object> 元素可支持多种不同的媒介类型,比如: 图片 音频 视频 Other 对象 显示图片 你可以显示一幅图片: <object height="100%&quo ...

  10. 前端过滤XSS攻击

    日常开发过程中,对于存在用户交互的一些门户网站等,过滤xss攻击是必不可少的. 此处主要记录下我在工作过程中的简单处理方法. 前端过滤XSS攻击, 我这里用的是开源工程 js-xss,官网地址:htt ...