如何在Reinforced.Typings中将属性标记为可为空(“类型| null”)?

时间:2019-07-23 08:36:30

标签: reinforced-typings

Reinforced.Typings在ForceNullable属性上具有[TsProperty]自变量,但它生成可选属性,并且我的API返回文字null(不要忽略该属性或将其设置为undefined )。

例如,[TsProperty(ForceNullable = true)] field:boolean变成field?:boolean,而我希望它成为field:boolean | null

Reinforced.Typings是否可以实现这一目标?

我不想使用像[TsProperty(Type = "boolean | null")]这样的解决方法,我希望将C#类型名称转换为ts类型名称由标准的Reinforced.Typings逻辑处理,只需将| null添加到结果类型中即可。

1 个答案:

答案 0 :(得分:0)

可空值类型很简单。引用类型至少需要一个访问者,因为您必须使用相当复杂的反射来查看它是否可以为空。

但是对于像你的例子一样的 bool :

builder.SubstituteGeneric(typeof(Nullable<>),(t, r) => new RtSimpleTypeName($"{r.ResolveTypeName(t.GenericTypeArguments.First())} | null"));