VS自带的功能:性能和诊断
先看一眼代码:
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自带的功能:性能和诊断的更多相关文章
- MySQL 5.7 学习:功能性能的提升
背景: 继上次介绍 初识 MySQL 5.6 新功能.参数完之后,刚好MySQL 5.7又GA了,在官方测试里看到,MySQL5.7在功能.性能.可用性.安全和监控上又提升了很高.现在看看和MySQL ...
- (转载)Java自带的GUI性能监控工具Jconsole以及JisualVM简介
原文链接:http://blog.csdn.net/chendc201/article/details/22905503 1 Jconsole 1.1 简介以及连接 JConsole是一个基于JMX的 ...
- 百度地图API 批量添加 带检索功能的信息窗口
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Elastic Image Slider 带缩略图功能的幻灯片
今天我们要为您展示如何创建一个简单的弹性幻灯片,带有缩略图预览功能.Elastic Image Slider 这款幻灯片能够自动调整以适应到其父容器,我们可以通过幻灯片使用缩略图预览或幻灯片的自动播放 ...
- 笔记本自带 WiFi 功能
在寝室,动网速基本崩溃.平时打电话什么的都得到阳台,有时候还听不清声音.对于学校的环境,我不说什么了. 笔记本可以上网,那就要满足手机等移动电子设备上网的上网需求. WiFi 热点就显得尤为重要了. ...
- GridView使用自带分页功能时分页方式及样式PagerStyle
// 转向地址:http://www.bubuko.com/infodetail-412562.html GridView分页,使用自带分页功能,类似下面样式: 在aspx页面中,GridView上的 ...
- 基于jQuery带备忘录功能的日期选择器
今天给大家分享一款基于jQuery带备忘录功能的日期选择器.这款日期控制带有备记忘录功能.有备忘录的日期有一个圆圈,单击圆圈显示备忘录.该实例适用浏览器:360.FireFox.Chrome.Safa ...
- 调用Android自带日历功能(日历列表单、添加一个日历事件)
调用Android自带日历功能 觉得这篇文章不错,转载过来. 转载:http://blog.csdn.net/djy1992/article/details/9948393 Android手机配备有 ...
- SSIS从理论到实战,再到应用(6)----SSIS的自带日志功能
原文:SSIS从理论到实战,再到应用(6)----SSIS的自带日志功能 上期回顾: SSIS从理论到实战,再到应用(5)----流程控制之Foreach循环 博主最近新负责了一个ssis大项目的架构 ...
随机推荐
- rsync 推送
两遍服务器都安装好rsync后 如果做推送服务 被推送的服务器的 配置文件 注意事项 1服务端(192.168.1.241)配置的密匙文件 格式为[运行环境] 用户名:密码 root:123456 ...
- Android开发实例-健康食谱应用(一)
转载请注明出处:http://blog.csdn.net/einarzhang/article/details/44774635 本系列文章的重点是如何使用Android开发一个简单的健康食谱软件.使 ...
- systrace跟踪 Android性能优化
http://blog.csdn.net/oujunli/article/details/8138172 http://blog.csdn.net/oujunli/article/details/50 ...
- 我的第一个C语言程序 (A+B Problem)(cheney-yang)
第一个接触的C语言程序,是一个简单的A+B问题! 题目出处:http://acm.nyist.net/JudgeOnline/problem.php?pid=1 题目描述: 计算a+b的值 输入: ...
- oracle中的层级递归查询操作
oracle中的层级操作非常方便,在使用之后爱不释手,以前要实现该种数据查询操作,需要非常复杂的实现过程.在oracle中通过connect by可以实现前面的目的,通常情况下层级查询基本都能实现递归 ...
- Python之路【第十七篇】:Django【进阶篇】
Python之路[第十七篇]:Django[进阶篇 ] Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...
- 10.27 noip模拟试题
1.铺瓷砖(tile.cpp/c/pas)[问题描述]有一面很长很长的墙. 你需要在这面墙上贴上两行瓷砖. 你的手头有两种不同尺寸的瓷砖,你希望用这两种瓷砖各贴一行.瓷砖的长可以用分数表示,贴在第一行 ...
- KineticJS教程(1-2)
1.基本结构 KineticJS首先是要绑定到HTML页面上的一个DOM容器元素上,比如最常用的<div>标签.KineticJS在此容器中创建一个称之为舞台(stage)的结构,这个舞台 ...
- WPF Binding值转换器ValueConverter使用简介(二)-IMultiValueConverter
注: 需要继承IMultiValueConverter接口,接口使用和IValueConverter逻辑相同. 一.MultiBinding+Converter 多值绑定及多值转换实例 当纵向流量大于 ...
- HTML5 History对象,Javascript修改地址栏而不刷新页面(二)
一.实例说明: $('#btnOne').click(function () { var stateObject = { id: 1 }; var title = "本地首页"; ...