我需要在T4模板中执行JSON模式生成,并且发现Newtonsoft的新Schema类远远超出手头上的目的(在控制台应用程序中测试过),但是,我无法似乎使它与其他球一起玩,因为Newtonsoft的实例总是返回null。T4与第三方程序集的模板
T4声明:
<#@ template debug="true" hostspecific="true" language="C#" #>
<#@ assembly name="System.Core" #>
<#@ assembly name="Newtonsoft.Json.dll" #>
<#@ assembly name="Newtonsoft.Json.Schema.dll" #>
<#@ import namespace="System.Linq" #>
<#@ import namespace="System.Text" #>
<#@ import namespace="System.Collections.Generic" #>
<#@ output extension=".cs" #>
集引用指向DLL文件,我在该项目的项目设置中设置文件夹的样子起坐,截图如下:
试图做下面的事情,失败,因为Newtonsoft无法找到:
var schema = Newtonsoft.Json .Schema.JSchema.Parse(jsoncontent);
会发生错误是:元数据文件“Newtonsoft.Json.Schema.dll”找不到
嗨马特,我遵循完全相同的讨论,它不适合我。它最终成为了Newtonsoft.Json.Schema的NuGet的版本,内部针对Newtonsoft.Json的v6 +进行了编译,并且我从NuGet获得了v7。奇怪的是,一个普通的控制台应用程序没有引发这个异常,只是当我想在T4中使用它时,它被引发,但不是通过传统的异常处理,必须真正挖掘才能找到这个错误。从GitHub获得了最新的.Schema,并使用版本7进行编译,并且工作正常。谢谢 – JadedEric
我会把你发现的答案,因为其他人可能会遇到这种情况,也许没有找到你的解决方案的评论。 –
好点,谢谢:) – JadedEric