我在尝试将json导入mongodb时收到此错误。
2016-01-15T14:57:09.682-0800错误插入文件:文件不能有$ 带前缀的字段名称:$ type
使用Json.Net序列化json
var settings = new JsonSerializerSettings();
settings.TypeNameHandling = TypeNameHandling.Objects;
string output = JsonConvert.SerializeObject(o, Formatting.Indented, settings);
答案 0 :(得分:0)
请参阅MongoDB documentation,其中讨论了对字段名称的限制。
Field names cannot contain dots (i.e. .) or null characters, and they must
not start with a dollar sign (i.e. $).
如果您使用Mongo shell进行导入,则可能需要将$type
更改为其他内容。
或者,您可以使用C#驱动程序导入文档,它将自动为您序列化具体类型名称。