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深入理解JNI(一)JNI原理与静态、动态注册
前言 JNI不仅仅在NDK开发中应用,它更是Android系统中Java与Native交互的桥梁,不理解JNI的话,你就只能停留在Java Framework层.这一个系列我们来一起深入学习JNI. ...
- LR11开始录制时打不开浏览器
LR11 能支持的浏览器实际上不仅限于 IE8 官方文档没有明确表示支持,可以尝试.官方支持列表如下: ➤ Microsoft Internet Explorer 6.0 SP1 or SP2 ➤ M ...
- .net core web 中使用app.UseRouter的几种使用方式
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory ...
- dom4j 改变XML声明和编码格式
dom4j 改变XML编码 Element rootElement = document.addElement("data"); document.setXMLEncoding(& ...
- Android Hook 框架 Cydia_substrate 详解
目录(?)[-] 使用方法 短信监控实例 1.Cydia_Substrate 框架简介 Cydia Substrate是一个代码修改平台.它可以修改任何主进程的代码,不管是用Java还是C/C++(n ...
- JSP学习(四)JSP属性范围
P属性范围 四种属性范围分别指以下四种: 当前页page:一个属性只能在一个页面中取得,跳转到其他页面无法取得 一次服务器请求request:一个页面中设置的属性,只要经过了服务器跳转,则跳转之后的页 ...
- 字符串处理scanf("%d%*c",&n);
"*"表示该输入项读入后不赋予任何变量,即跳过该输入值.这在减小内存开支上面还是有一点用处的,不需要的字符直接跳过,免得申请没用的变量空间 你的例子中的%*c的作用是读入'\n', ...
- EXCEL某列长度超过255个字符导入SQL SERVER2005的处理方法
将注册表中 Jet引擎. HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Jet/4.0/Engines/Excel 如果是:ACE引擎. HKEY_LOCAL_MACHI ...
- 进程间通信IPC之--无名管道(pipe)和有名管道(fifo)(转)
进程间通信IPC之--无名管道(pipe)和有名管道(fifo) 2012-01-17 22:41:20 分类: C/C++ 每个进程各自有不同的用户地址空间,任何一个进 程的全局变量在另一个进程中 ...
- 在Centos中yum安装和卸载软件的使用方法(转)
在Centos中yum安装和卸载软件的使用方法 安装方法 安装一个软件时 yum -y install httpd 安装多个相类似的软件时 yum -y install httpd* 安装多个非类似软 ...