【问题标题】:BLToolkit + T4 generation + PostgreSQL database, possible?BLToolkit + T4 代 + PostgreSQL 数据库,可能吗?
【发布时间】:2017-03-17 00:30:02
【问题描述】:

想使用bltoolkit、T4 模板和 postgreSQL 生成我的数据层。根据documentation 建议的模板,我收到一个运行我的 T4 模板的异常:

Error 5 Running transformation: System.ArgumentNullException: Value cannot be null. 
Parameter name: type, at System.Activator.CreateInstance(Type type, Boolean nonPublic)
(...)

在 VSNET08 中工作,引用了所有库,连接到 mssql 工作正常,起初,一切似乎都是正确的,但我留下了一些东西......

这是我的 .tt 模板:

<#@ template language="C#v3.5" hostspecific="True" #> 
<#@ output extension=".generated.cs"   #> 
<#@ include file="BLToolkit.ttinclude" #> 
<#@ include file="PostgreSQL.ttinclude"    #> 
<#@ include file="PluralSingular.ttinclude" #> 
<# 
  ConnectionString = "<connection string to postgresql database"; 
  DataProviderAssembly = @"..\References\Npgsql.dll"; 
  GenerateModel(); 
#>

【问题讨论】:

    标签: postgresql t4 bltoolkit argumentnullexception


    【解决方案1】:

    T4 很可能找不到 Npgsql.dll。当 T4 运行时,当前目录不是您的项目位置。所以你应该尝试完整路径。

    另一个问题是依赖程序集。将以下内容添加到您的模板中:

    System.Reflection.Assembly.LoadFile(@"...PostgreSqlLocation...\Mono.Security.dll");
    

    【讨论】:

    • 解决了更新 Postgresql .Net 驱动的问题。 T4 是一个很棒的工具,但有时很难获得详细的错误信息...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-28
    • 2021-10-13
    • 2012-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多