最近刚接触T4模板,想自己写一个小程序实现从PDM直接生成实体类和Map文件,但是有一个问题一直困扰我,我自己写了个类库文件,用来处理PDM文件的,返回Table 列,视图什么,问题是:不论我通过什么方式引用的dll 当使用dll里面的对象的时候,都提示未将对象引用设置到对象的实例。
还有就是使 VolatileAssembly processor="T4Toolbox.VolatileAssemblyProcessor 这种方式的时候,总是说未能解析处理器指令 T4Toolbox.VolatileAssemblyProcessor的类型。。
求救啊。。。。
在线等!!!!
网上能找到的都招了,可是问题还是解决不了。z
我之前是使用 Microsoft.VisualStudio.TextTemplating.Engine 实例的 ProcessTemplate(input, host) 方法来做T4模板生成代码,其中,host参数是实现了 ITextTemplatingEngineHost, ITextTemplatingSessionHost 接口的类实例, 如果传递到 host的Session中的参数与T4模板里的参数不一致,可能会导致 “未将对象引用设置到对象的实例”的异常。
建议你先检查一下你的代码,是不是往host的Session属性里传递了足够的参数(在T4模板里使用的参数)。
我也遇到这个问题,最后还是把代码直接复制到T4里解决的.
<#@ assembly name="System.Data" #>
name 可以是一个路径
然后引用命名空间即可
<#@ assembly name="System.Data" #>
<#@ import namespace="System.Data" #>