嘿嘿,
我们有一个带有属性 Id
的文档对象(我们知道它会自动映射到 _id
字段),我们可以让它作为一个 int
来工作和一个 System.Guid
。
然而,当我们将它更改为更适合我们的用例的字符串时,我们在尝试索引时会遇到以下异常:
mapper_parsing_exception 原因:无法解析 [id] CausedBy:类型:illegal_argument_exception 原因:对于输入字符串:“R700”
不太确定在这里尝试什么。我们想要一个字符串 _id
并且根据在线资源我们应该能够,但是我们得到了这个异常。
非常感谢任何帮助!
编辑:我们是从 POCO 上名为 Id 的属性推断出 Id,我应该澄清一下。 示例:
public class MyDocument {
public string Id { get; set; }
...
}
最佳答案
如果您已经使用 int 或 guid 作为 Id 字段创建了索引,则需要先使用具有字符串作为 Id 字段的新 POCO 重新创建索引,然后才能将该类型存储在索引中。
关于c# - 不能在 Elasticsearch 中使用字符串作为 _id 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50237758/