我们可以拥有$ref #schema
等属性名称吗?如果是这样,怎么样?如果不是为什么不呢?
我实际上是在做这样的事情
dynamic d = new ExpandoObject();
d.$ref = somevlaue;
但我不能这样做?
另外,我如何解决关键字不能成为属性名称的事实?
答案 0 :(得分:5)
答案 1 :(得分:5)
由于您主要对ExpandoObject
感兴趣,因此解决方法是通过将ExpandoObject强制转换为IDictionary<string, Object>
来直接设置和/或检索这些属性名称:
dynamic d = new ExpandoObject();
var dict = (IDictionary<string, Object>)d;
dict["$ref"] = "haha!";
答案 2 :(得分:3)
该语言具有可接受的名称字符的准则。在您的情况下,您可以尝试使用@ref
。