मेरे पास डेटाबेस से डाउनलोड की गई एक सरणी है जहां संपत्ति service_time Nullable<DateTime> है:

service_time: Nullable<DateTime>

एफ # में, मैं इस सरणी को कैसे क्रमबद्ध कर सकता हूं, सभी तत्वों को service_time = null सबसे पहले नए सरणी में रखकर?

Array.sortBy (fun t -> t.service_time)

देता है: 'Nullable' प्रकार 'तुलना' बाधा का समर्थन नहीं करता है।

f#
1
Alan Wayne 9 पद 2020, 21:12

1 उत्तर

सबसे बढ़िया उत्तर

आप इस तथ्य का लाभ उठा सकते हैं कि default(DateTime) DateTime.MinValue और service_time.GetValueOrDefault() जैसे:

Array.sortBy (fun t -> t.service_time.GetValueOrDefault())

या, अधिक स्पष्ट रूप से:

Array.sortBy (fun t -> t.service_time.GetValueOrDefault(DateTime.MinValue))

यदि आप सरणी के अंत में नल रखना चाहते हैं तो आप यह कर सकते हैं:

Array.sortBy (fun t -> t.service_time.GetValueOrDefault(DateTime.MaxValue))

डेमो फिडल यहां

7
dbc 9 पद 2020, 22:55