所以我有很多.Net库/类,我想为它们生成打字稿定义.打字稿很棒!我用简单的例子试了一下它确实很有效.我面临的唯一问题是我所拥有的组合不适合它.这是它不起作用的方式:
[TsClass]
public class Bob<T>
{
public MyTestEnum MyEnum { get; set; }
public string TestString { get; set; }
public string MyProperty { get; set; }
}
[TsEnum]
public enum MyTestEnum
{
One,
Two,
Three
}
问题是我不能将泛型的组合< T>和Enum在同一个地方.为了使它工作,我需要取出其中任何一个.
这是我运行它时给出的错误:
Error 17 Running transformation: System.NullReferenceException: Object reference not set to an instance of an object.
at TypeLite.TsModelBuilder.AddEnum(TsEnum tsEnum) in C:\___PROJECTS___\TypeLITE\TypeLite\TsModelBuilder.cs:line 98
at TypeLite.TsModelBuilder.Add(Type clrType, Boolean includeReferences) in C:\___PROJECTS___\TypeLITE\TypeLite\TsModelBuilder.cs:line 83
at TypeLite.TsModelBuilder.Add(Assembly assembly) in C:\___PROJECTS___\TypeLITE\TypeLite\TsModelBuilder.cs:line 108
at TypeLite.Net4.TypeScriptFluentExtensions.ForLoadedAssemblies(TypeScriptFluent ts) in C:\___PROJECTS___\TypeLITE\TypeLite.Net4\TypeScriptFluentExtensions.cs:line 16
at Microsoft.VisualStudio.TextTemplatingBDE10CD05B2CB4C5419DB79DDF5BA5BA06D673F55FF952439E5971D4E1F394085E3B6D99DC6D1E992221FAC06D0692FFD83BE54FE5AF6A567A491DF31AE26472.GeneratedTextTransformation.TransformText() ..\Scripts\TypeLite.Net4.tt
事实上,我没有做任何与泛型有关的事情是无关紧要的(我只是想让它工作!)
如果您知道一种解决方法或者您是否可以引入另一种类似于它的能够执行此类操作的实用程序,我将不胜感激.
我已经向开发人员报告了这个问题(希望Lukas很快就会解决这个问题):https://bitbucket.org/LukasKabrt/typelite/issue/41/issue-with-generics-and-enums
最佳答案 多亏了
Paul O’Neill,这个错误在
latest release (0.9.1.8)修复了