【发布时间】:2021-07-01 18:06:44
【问题描述】:
我使用 Azure 搜索,搜索索引中的字段可以为空。
这意味着我的代码var result = await searchIndexClient.Documents.SearchAsync<SearchEntity>(query, parameters);
抛出异常
“InvalidCastException Null 对象无法转换为值类型。”
对于 Csharp:
public class SearchEntity{
...
boolean NewField{ get; set; }
...
}
和索引文档:
{
"@odata.context": "...",
"value": [
{
"@search.score": 1,
...
"NewField": null,
...
如果接收到的字段为空,我想告诉SearchAsync(?) 为SearchEntity 中的属性设置一个默认值。
有可能吗?
(我知道我可以收到 null 并在以后默认它,但这样做有什么乐趣?)
【问题讨论】:
-
“SearchEntity”类似乎是您自己的类 - 您不能修改该类以允许某些字段为空值并在其中设置默认值吗?
-
请编辑您的问题并提供有关您的
SearchEntity的详细信息。 -
@ramero-MSFT 我可以,但这有什么好玩的?