在 IFindFluent .SortBy 块中使用条件子句
Using conditional clause in IFindFluent .SortBy block
我正在尝试对查找应用条件排序,如下所示:
var findFluent = Collection.Find (...)
.SortBy (record => record.IsActive)
.SortBy (record => record.Client != null
? record.Client.Profile.FirstName
: record.Profile.FirstName);
但是,我收到以下错误:
"Unable to determine the serialization information for record => IIF((record.Client != null), record.Client.Profile.FirstName, record.Profile.FirstName)."
我是否必须 add/implement IBsonDocumentSerializer 在有问题的 类 之一上,或者这个操作是不可能的?
我最终只是根据条件中的逻辑添加了一个新的 .SortBy () 子句:
var findFluent = Collection.Find (...)
.SortBy (record => record.IsActive)
.SortBy (record => record.Client.Profile.FirstName)
.SortBy (record => record.Profile.FirstName);
如果值为空或无法计算,驱动程序似乎会忽略排序。
我正在尝试对查找应用条件排序,如下所示:
var findFluent = Collection.Find (...)
.SortBy (record => record.IsActive)
.SortBy (record => record.Client != null
? record.Client.Profile.FirstName
: record.Profile.FirstName);
但是,我收到以下错误:
"Unable to determine the serialization information for record => IIF((record.Client != null), record.Client.Profile.FirstName, record.Profile.FirstName)."
我是否必须 add/implement IBsonDocumentSerializer 在有问题的 类 之一上,或者这个操作是不可能的?
我最终只是根据条件中的逻辑添加了一个新的 .SortBy () 子句:
var findFluent = Collection.Find (...)
.SortBy (record => record.IsActive)
.SortBy (record => record.Client.Profile.FirstName)
.SortBy (record => record.Profile.FirstName);
如果值为空或无法计算,驱动程序似乎会忽略排序。