CodeSmith介绍和常见问题解决方案
一、CodeSmith介绍
CodeSmith模板代码生成实战详解 https://www.cnblogs.com/knowledgesea/p/5016077.html
二、CodeSmith连接不上MySQL解决方法
在codesmith中选择MySQLSchemaProvider并连接数据库时,会报以下错误:
Test failed. 找不到请求的 .Net Framework 数据提供程序。可能没有安装。
1.如果你安装了mysql-connector-net 那么你就进安装路径里面找到 MySql.Data.dll;如果没有,访问http://dev.mysql.com/downloads/connector/net/,下载并安装mysql-connector-net-x.x.x.msi。其中x.x.x是版本号,直接下载最新版即可。
2.复制"MySql.Data.dll"到X:XX\CodeSmith\v*.*\SchemaProviders目录下和Codesmith的Bin目录下。
3.修改CodeSmith.exe.config,添加mysql的DbProviderFactories配置(注意版本号和PublicKeyToken要与上面的MySql.Data.dll保持一致),下面以版本6.7.4.0为例,修改的CodeSmith.exe.config的配置全部代码如下;保存CodeSmith.exe.config 重新打开CodeSmith.exe 完美运行。

<?xml version="1.0"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<system.data>
<DbProviderFactories>
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>
<system.diagnostics>
<switches>
<add name="CodeSmithSwitch" value="4" />
</switches>
</system.diagnostics>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="bin;AddIns;SchemaProviders"/>
</assemblyBinding>
</runtime>
</configuration>

附上a/MySql.Data.dll(版本6.7.4.0)链接:点击下载
b、利用VS自带的命令行工具查看和生产PublicKeyToken:https://blog.csdn.net/kuui_chiu/article/details/6914049
二、CodeSmith使用
连接字符串 https://www.connectionstrings.com/
ACCESS数据库 Provider Type:ADOXSchemaProvider
1:无密码的Access链接为:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\hh\db.mdb;
2:有密码的Access链接:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\hh\db.mdb;
Jet OLEDB:Database Password=1111
Sql数据库 Provider Type:SqlSchemaProvider
server=192.1.1.14;User ID=test;Password=test;database=test;
Pooling=TRUE;Max Pool Size=1000;Connection Reset=FALSE
Oracle数据库 Provider Type:OracleSchemaProvider
1:下载提供的ORACAL 驱动
2:Data Source=192.1.1.14;Database=test;Password=test;User ID=test
MySql数据库 Provider Type:MySqlSchemaProvider
Database=test;Data Source=127.0.0.1;User Id=root;Password=password;port=3306
CodeSmith自己动手写模板 https://www.cnblogs.com/sunniest/p/4128183.html
CodeSmith无法获取MySQL表及列Description说明注释的解决方案
https://blog.csdn.net/nihaoapengyou/article/details/52587986
https://www.cnblogs.com/xinzheng/p/5809766.html
CodeSmith介绍和常见问题解决方案的更多相关文章
- CodeSmith 介绍
代码生成器作用 中国有句古语叫做“工欲善其事,必先利其器”,用通俗的话来说就是“磨刀不误砍柴功”,古人的这些话告诉我们:要把事情做好,事先应该准备合适的工具.工具不仅仅包括器具, 还包括思想.理论.经 ...
- 阿里云(四)Linux 实例常用内核网络参数介绍与常见问题处理
Linux 实例常用内核网络参数介绍与常见问题处理 https://help.aliyun.com/knowledge_detail/41334.html
- 使用jquery.qrcode生成二维码及常见问题解决方案
转载文章 使用jquery.qrcode生成二维码及常见问题解决方案 一.jquery.qrcode.js介 jquery.qrcode.js 是一个纯浏览器 生成 QRcode 的 jQuery ...
- JWT 身份认证优缺点分析以及常见问题解决方案
本文转载自:JWT 身份认证优缺点分析以及常见问题解决方案 Token 认证的优势 相比于 Session 认证的方式来说,使用 token 进行身份认证主要有下面三个优势: 1.无状态 token ...
- redis介绍及常见问题总结
1.redis c语言编写的一个开源软件,使用字典结构存储数据,支持多种类型数据类型 数据类型:字符串,字典,列表,集合,有序集合 2.redis特点 速度快:c语言实现的,所有数据都存储在计算机内存 ...
- Oracle 11g R2在 win7 64位的安装流程图解【含常见问题解决方案】
ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一.Oracle 11 ...
- CentOS安装Oracle数据库详细介绍及常见问题汇总
一.安装前准备 1.软件硬件要求 操作系统:CentOS 6.4(32bit)Oracle数据库版本:Oracle 10g(10201_database_linux32.zip)最小内存:1G(检查命 ...
- web移动端常见问题解决方案 (转)
总结:本文总结了web移动端的常见问题并附上解决方案,包括:Meta标签.获取滚动条的值.禁止选择文本.屏蔽阴影.css之border-box.css3多文本换行.Retina屏幕高清图片.html5 ...
- RESTful Service API 常见问题解决方案
REST 风格的优秀设计应该像下面这些: - GET /users 获取所有用户 - GET /users/1234 获取ID为1234的用户 - POST /users 创建一个新用户 - PUT ...
随机推荐
- sql server 插入用户
'创建登陆用户 use master create login [mashenghao] with password='kline',DEFAULT_DATABASE=[kchnetdb], DEFA ...
- OPEN(SAP) UI5 学习入门系列之三:MVC (下) - 视图与控制器
继续来学习UI5的MVC模型吧,这次我们来探讨视图与控制器. 1 视图 在MVC中,视图用来定义和渲染UI.在UI5中,视图的类型是可以自定义的,除了以下预定义的四种视图类型之外,你也可以定制自己的视 ...
- 什么是URL,URI或URN?
什么是URI? 每个Web服务器资源都有一个名字,这样客户端就可以说明它们感兴趣的资源是什么了. 服务器资源名被称为统一资源标识符(Uniform Resource Identifier, URI). ...
- OK335x mksd.sh hacking
#! /bin/sh # mk3PartSDCard. # Licensed under terms of GPLv2 # 参考文档: # . sfidsk创建可启动分区问题 # http://seg ...
- librec库
固定初始化矩阵值 net.librec.math.structure -> class DenseMatrix -> void init()
- JS格式化数字(每三位加逗号)
function toThousands(num) { var num = (num || 0).toString(), result = ''; //判断是否带小数点 if (num.split(' ...
- BZOJ2154 Crash的数字表格 【莫比乌斯反演】
BZOJ2154 Crash的数字表格 Description 今天的数学课上,Crash小朋友学习了最小公倍数(Least Common Multiple).对于两个正整数a和b,LCM(a, b) ...
- xml的读取(曾删改)
获取XML 得到 需要查询的字段名 private string GetXml(string TableName) { try { string TbName = TableName.Split('_ ...
- 实用符号Alt+小键盘快输
键盘输入:①Word.写字板.QQ2011等,Alt+Unicode之十进制数:②记事簿.网页框.浏览器之地址栏.TM2009等,Alt+GBK之十进制数. 字符 Unicode 十进制数 GBK ...
- Java中16进制与字符串之间的相互转换
笔者前几日在开服过程中需要将字符串转化成为16进制的字符串,在网上找到了一些方法尝试之后,均发现存在一个问题-->字符串转为16进制后再转回来,英文正常,中文出现乱码 经过考虑决定通过以下方式进 ...