Я разрабатываю API в ядре. net и использую сущность Framework.
Мой банк уже существует, и в одной из таблиц у меня есть поле типа Point для хранения координат (Spatials).
Я не использую какой-либо автоматический c подход (например: сначала код, сначала база данных ...), я сам моделирую свои классы.
Чтобы сопоставить это поле точки, я сделал это, как и в примитивных типах, я считаю ошибочным, и я получаю сообщение об ошибке:
System.InvalidOperationException: 'Свойство' Address.LatLong 'не может быть отображено, потому что оно имеет тип Point, который не является поддерживаемым примитивным типом или допустимым типом объекта. Либо явно сопоставьте это свойство, либо проигнорируйте его с помощью атрибута «[NotMapped]» или с помощью EntityTypeBuilder.Ignore в «OnModelCreating».
public class Address:BaseModel
{
[Required]
[StringLength(30)]
public string Street { get; set; }
[Required]
public int Number { get; set; }
[StringLength(45)]
public string Observation { get; set; }
[Required]
[StringLength(20)]
public string PostalCode { get; set; }
[ForeignKey(nameof(City))]
[Required]
public int CityId { get; set; }
public virtual City City { get; set; }
public Point LatLong { get; set; } //this is the field
}