zoukankan      html  css  js  c++  java
  • 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:XXCodeSmithv*.*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:hhdb.mdb;
              2:有密码的Access链接:
                    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:hhdb.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

                   asp.net(C#)链接Oracle连接字符串

             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

  • 相关阅读:
    [JSOI2007][BZOJ1030] 文本生成器|AC自动机|动态规划
    [NOI2014][BZOJ3670] 动物园|KMP
    [HAOI2010][BZOJ2427] 软件安装|tarjan|树型dp
    [JSOI2008][BZOJ1017] 魔兽地图DotR|树型dp
    [JLOI2014][BZOJ3631] 松鼠的新家|树上倍增LCA|差分
    [SDOI2010][BZOJ1975] 魔法猪学院|A*|K短路
    [BZOJ1251] 序列终结者|Splay
    hdu 2141 Can you find it?
    hdu 3152 Obstacle Course
    hdu 2680 Choose the best route
  • 原文地址:https://www.cnblogs.com/cheng2015/p/9220591.html
Copyright © 2011-2022 走看看