Я использую ядро EF 2.2 с проектом, в котором есть объект IGeometry (https://docs.microsoft.com/en-us/ef/core/modeling/spatial), и я выполняю запрос «Пересечения» для некоторых пространственных данных в моей базе данных.Однако иногда я получаю эту ошибку:
Ошибка .NET Framework произошла во время выполнения пользовательской подпрограммы или совокупной «геометрии»: System.ArgumentException: 24144: эту операцию невозможно выполнить, так как экземплярнедействительный.Используйте MakeValid для преобразования экземпляра в допустимый экземпляр.Обратите внимание, что MakeValid может вызвать незначительное смещение точек экземпляра геометрии
теперь, когда я работал на чистом SQL, не используя ядро EF, я мог бы просто использовать MakeValid, чтобы это исправить, но я не вижучто-нибудь подобное в C #.Ближайший, я вижу, вариант 'IsValid' (https://nettopologysuite.github.io/html/class_net_topology_suite_1_1_operation_1_1_valid_1_1_is_valid_op.html)
Есть ли MakeValid для EF Core, который я не нахожу?