Enterprise Library 6 学习笔记
今天是2014年上班第一天,想着今年要做点与往年不同的事情,就从写博客开始吧。
公司的项目一般都用微软的企业库,一直没时间好好研究,第一天上班还不忙,就抽空研究了下。搜索一下,发现这个企业库已经到了6.0版本了,就拿这个来研究好了。
在博客园上看到有好多文章介绍企业库的,大都是5.0版本的,于是想自己写个6.0的简单易操作的文章。
MSDN介绍地址:http://msdn.microsoft.com/zh-cn/library/dn169621.aspx
下载地址:http://www.microsoft.com/en-us/download/details.aspx?id=38789
点击下载会出现6个文件提供下载,可以都下下来。其中有个Microsoft.Practices.EnterpriseLibrary.ConfigConsoleV6.vsix,这个是在Visual Studio 2012里添加右键菜单用的,直接运行就可以。
学习的话还需要下载这个Hands-on Labs示例(http://www.microsoft.com/en-us/download/details.aspx?id=40286),这里面介绍得很详细。解压后有几个文件夹,就从第一个Data Access开始学吧。
在setup目录下是创建测试数据库的脚本,直接执行脚本就行,前面会报错,没关系,不影响执行,执行完后刷新数据库就能看到新建的库了。
在instructions目录下是使用文档,打开pdf的就可以,里面写得很详细,按照里面写的一步一步来就行。
下面就开始吧
打开\exercises\ex01\begin下的DataEx1.sln
在CustomerManagement项目上右击选择管理NuGet程序包,选择联机,搜索“enterpriselibrary”,选择
(当然如果前面已经下了可以直接把dll引用进来)
安装完后打开MainForm.cs文件,
引入dll
using Microsoft.Practices.EnterpriseLibrary.Data;
using Microsoft.Practices.EnterpriseLibrary.Common.Configuration;
修改如下代码:
private void mnuCount_Click(object sender, System.EventArgs e)
{
// TODO: Count Customers
DatabaseProviderFactory factory = new DatabaseProviderFactory();
Database db = factory.Create("QuickStarts Instance");
int count = (int)db.ExecuteScalar(CommandType.Text, "SELECT COUNT(*) FROM Customers");
string message = string.Format("There are {0} customers in the database", count.ToString());
MessageBox.Show(message);
}
private void mnuLoad_Click(object sender, System.EventArgs e)
{
// TODO: Load Customers
DatabaseProviderFactory factory = new DatabaseProviderFactory();
Database db = factory.CreateDefault();
DataSet ds = db.ExecuteDataSet(CommandType.Text, "SELECT * From Customers");
dataGrid1.DataSource = ds.Tables[0];
}
然后添加配置文件,在App.config上右键弹出菜单中选择Edit configuration file v6,按下图配置

点击Connection String,写入连接字符串

点File-Save,关闭配置界面,回到VS里面,App.config会重新加载
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=6.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />
</configSections>
<dataConfiguration defaultDatabase="EntLibQuickStarts" />
<connectionStrings>
<add name="EntLibQuickStarts" connectionString="Data Source=mythmaomao;Initial Catalog=EntLibQuickStarts;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
然后运行项目吧,在菜单栏上点击Customers-Load,出现下图:

本节到此结束,其它的也是参照Hands-on Labs里的pdf来学习。
Enterprise Library 6 学习笔记的更多相关文章
- Parallel Pattern Library(PPL)学习笔记
关于PPL是什么,可以搜索关键字MSDN PPL了解详情.这里谈一下困扰自己好一阵子的一个地方--task chain中抛出异常的处理,一来可为其他码农同行参考,二来给自己做个记录,以免日后忘却. V ...
- DPDK Mbuf Library(学习笔记)
1 Mbuf库 Mbuf库提供了分配和释放缓冲区(mbufs)的功能,DPDK应用程序可以使用这些mbufs来存储消息缓冲. 消息缓冲存储在内存池中,使用Mempool库. 数据结构rte_mbuf通 ...
- Enterprise Library 5.0 学习笔记
近期了解了微软提供的企业开发框架Enterprise Library,眼下最新版本号是6.0,可是不支持FW3.5.所以就学习了5.0的版本号,EL5.0支持FW3.5和4.0,官网下载地址是:htt ...
- V-rep学习笔记:Reflexxes Motion Library 3
路径规划 VS 轨迹规划 轨迹规划的目的是将输入的简单任务描述变为详细的运动轨迹描述.注意轨迹和路径的区别:Trajectory refers to a time history of positio ...
- V-rep学习笔记:Reflexxes Motion Library 2
VREP中的simRMLMoveToPosition函数可以将静态物体按照设定的运动规律移动到指定的目标位置/姿态.If your object is dynamically enabled, it ...
- 微软企业库5.0 学习之路——扩展学习篇、库中的依赖关系注入(重构 Microsoft Enterprise Library)[转]
这篇文章是我在patterns & practices看到的一篇有关EntLib5.0的文章,主要介绍了EntLib5.0的这次的架构变化由来,觉得很不错,大家可以看一下! 在过去几年中,依赖 ...
- 【HLSL学习笔记】WPF Shader Effect Library算法解读之[DirectionalBlur]
原文:[HLSL学习笔记]WPF Shader Effect Library算法解读之[DirectionalBlur] 方位模糊是一个按照指定角度循环位移并叠加纹理,最后平均颜色值并输出的一种特效. ...
- 【HLSL学习笔记】WPF Shader Effect Library算法解读之[Embossed]
原文:[HLSL学习笔记]WPF Shader Effect Library算法解读之[Embossed] Embossed(浮雕效果) 浮雕效果主要有两个参数:Amount和Wid ...
- 【HLSL学习笔记】WPF Shader Effect Library算法解读之[BandedSwirl]
原文:[HLSL学习笔记]WPF Shader Effect Library算法解读之[BandedSwirl] 因工作原因,需要在Silverlight中使用Pixel Shader技术,这对于我来 ...
随机推荐
- 强制DataNode向NameNode上报blocks
正常情况下,什么时候上报blocks,是由NameNode通过回复心跳响应的方式触发的. 一次机房搬迁中,原机房hadoop版本为2.7.2,新机房版本为2.8.0,采用先扩容再缩容的方式搬迁.由于新 ...
- Android webview 退出时关闭声音 4.视频全屏 添加cookie
全屏问题,可以参考 http://bbs.csdn.net/topics/390839259,点击 webView = (WebView) findViewById(R.id.webView); vi ...
- ubuntu-12.04.4-alternate-i386安装
Ubuntu-12.04.4安装 0.网络配置环境: 1. 选择中文简体. 2.选择第一个,安装ubuntu . 3.询问是否安装所选择的语言版本,选择yes. 4.选择“否”默认键盘布局,选择 no ...
- handsontable 排序问题
排序是表格的基础功能,handsontable也会支持. 有时需求会很复杂,需要自定义排序,或者调用其他排序方法:自定义排序,比较复杂,没做过:今天要用的是调用R中的排序方法. 有两个事件before ...
- Linux (rz、sz命令行)与本地电脑 命令行上传、下载文件
Linux 与本地电脑直接交互, 命令行上传.下载文件. 一.lrzsz命令行安装: 1.rpm安装:(链接: http://pan.baidu.com/s/1cBuTm2 密码: vijf) rpm ...
- 学习JavaScript计划
1.首先根据视频做小例子 2.每天记录到博客 3.这次坚持把这个学完,并完成接口测试界面的编写
- string转Date转回String(JAVA)
String dateString = "2012-12-06 "; SimpleDateFormat sdf = new SimpleDateFormat("yyy ...
- Redis 5.0 安装
下载安装RedisServer mkdir –p /data/download && cd /data/download wget http://download.redis.io/r ...
- 【转】[MySQL复制异常]Cannot execute statement: impossible to write to binary log since statement is in row for
MySQL复制错误]Last_Errno: 1666 Last_Error: Error executing row event: 'Cannot execute statement: imposs ...
- 【BZOJ1049】 [HAOI2006]数字序列
BZOJ1049 [HAOI2006]数字序列 dp好题? 第一问 第一问我会做!令\(b_i=a_i-i\),求一个最长不下降子序列. \(n-ans\)就是最终的答案. 第二问 好难啊.不会.挖坑 ...