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 ...
随机推荐
- [置顶]
完美解决Android Studio 运行时出现的警告信息?
今天群友看到他说运行的时候报下面的错,我记得我之前导入百度地图也是遇到过,运行的时候一堆警告信息,然后编译失败等的,特别郁闷,其实后来在网上查了下,原来是很多第三方里面加个混淆,然后你有找不到那些方法 ...
- linux系统编程-进程
进程 现实生活中 在很多的场景中的事情都是同时进行的,比如开车的时候 手和脚共同来驾驶汽车,再比如唱歌跳舞也是同时进行的: 如下是一段视频,迈克杰克逊的一段视频: http://v.youku.com ...
- swift获取图片路径出错
获取图片路径 用以下方式获取 let path = Bundle.main.path(forResource: "ImageName", ofType: "ImageTy ...
- 【剑指offer】不使用除法,构建乘积数组,C++实现
# 题目 # 思路 设C[i] = A[0] * A[1] * - * A[i-1],D[i] = A[i+1] * - * A[n-1],则C[i]按照从上到下的顺序计算,即C[i] = C[i- ...
- int('x', base)中的base参数
>>> int('12', 16) 16表示'12'就是16进制数,int()要将这个16进制数转化成10进制.
- Python系列文章索引
>>> import this The Zen of Python, by Tim Peters Beautiful is better than ugly. Explicit is ...
- 如何实现一个可以用 await 异步等待的 Awaiter
.NET 和 C# 共同给我们带来的 async/await 异步编程模型(TAP)用起来真的很爽.为了实现异步等待,我们只需要在一切能够能够异步等待的方法前面加上 await 即可.能够异步等待的最 ...
- WPF中Grid实现网格,表格样式通用类(转)
/// <summary> /// 给Grid添加边框线 /// </summary> /// <param name="grid"></ ...
- 新版eclipse编写Android 时常常报的错误 -support-v7
一..和以往一样新建完一个Android项目之后.会报android.support.v4.. . . 或者V7找不到的错误. 这是由于这两个包在还有一个附带的项目(android-support ...
- Java API 操作Zookeeper
一.依赖 <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookee ...