zoukankan      html  css  js  c++  java
  • CodeSimth

    原文:http://www.cnblogs.com/chenrui7/p/3592082.html

    今天想使用CodeSimth生成一个sqlite数据库的模板。当添加添加数据库的时候发现:

    .Net Framework Data Provider 可能没有安装。

    下面找到官方的文档说明:   

    SQLite Schema Provider

    If you are trying to use the SQLite Schema Provider you may encounter the error message: 'The System.Data.SQLite library is not installed on this computer'. This error can occur for two reasons:

    1. The System.Data.SQLite hasn't been installed on your machine.
    2. The System.Data.SQLite hasn't been properly configured.

    Installing System.Data.SQLite

    Icon

    CodeSmith Generator is compiled as AnyCPU. This means that Generator will run as a 64bit process when you launch Generator outside of Visual Studio. If you are generating from within Visual Studio (32bit process), then CodeSmith Generator libraries will run as a 32bit process.

    This is very important to understand as it determines which Schema Provider dependencies are resolved at run-time.

     The first step is to ensure that you download and install the latest .NET Framework 4.0 version of  System.Data.SQLite.

    Icon
    If you are running a 64bit version of windows, please install both the 32bit and 64bit versions.
    Icon
    You can skip the following configuration steps if you install the legacy version of System.Data.SQLite hereThe older version configures itself by adding entries into your machine.config. 

    Configuring System.Data.SQLite

    The SQLite Schema Provider doesn't require a specific version of the SQLite managed libraries. This is because it uses DbProviderFactories when interacting with SQLite. One must update all .NET Framework 4.0 machine.config's and add the SQLite provider to the DbProviderFactories element:

    <system.data>
      <DbProviderFactories>
        <add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" />
      </DbProviderFactories>
    </system.data>

    The .NET Framework 4.0 machine.config's can be found here:

    • %windir%Microsoft.NETFrameworkv4.0.30319Configmachine.config
    • %windir%Microsoft.NETFramework64v4.0.30319Configmachine.config
    Next, you will need to copy the 64bit or 32bit SQLite assemblies that were installed via the System.Data.SQLite installer to CodeSmith Generators bin folder. This bin folder can be found in the location that you installed CodeSmith Generator to.
     

    看不懂的话,按照下面的方法做:

    1、下载System.Data.SQLite驱动;注意:根据自己的CPU选择是32位还是64位的驱动。建议选择4.0平台以上的。我的是:sqlite-netFx40-setup-bundle-x64-2010-1.0.91.0.exe ;

    2、安装完成后打开C:Program FilesSystem.Data.SQLite2010GAC把里面的两个dll复制到CodeSimth安装目录下的bin文件夹;

    3、配置

      根据自己的CPU平台打开下面路径,【可能需要修改一下文件写入的安全性,设置为Everyone就可以了,否则保存不了】

    • %windir%Microsoft.NETFrameworkv4.0.30319Configmachine.config
    • %windir%Microsoft.NETFramework64v4.0.30319Configmachine.config (我选择的是这个)
    • 找到<system.data>节点添加下面的内容。
    <system.data>
      <DbProviderFactories>
        <add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" />
      </DbProviderFactories>
    </system.data>

     4、重启CodeSimth就可以了。

  • 相关阅读:
    spring和mybatis整合报错:org.springframework.beans.MethodInvocationException: Property 'dataSource' threw exception; nested exception is java.lang.NoClassDefFoundError
    SpringMVC静态资源拦截的问题
    初识SpringMVC
    Linux打tar包排除目录中的某个目录
    Angular的forEach无法通return跳出循环问题
    shell脚本编写保存
    Chrome浏览器偶尔提示错误net::ERR_EMPTY_RESPONSE的解决方法
    SVN右键菜单不显示
    JavaScript创建对象常用的两种方法
    JavaScript调试之alert和console.log()的区别
  • 原文地址:https://www.cnblogs.com/wenjie/p/5488221.html
Copyright © 2011-2022 走看看