在.NET Core中,我有一个这样的模型类:
public class City
{
public Geometry Center { get; set; }
...
}
字符串
通过行查询,我从Postgres获取数据:
var result = await _context.Cities.FromSql($"SELECT jt.* FROM (SELECT ARRAY_AGG( p.\"relatedCities\") AS unique_vals FROM public.\"Provinces\" as p WHERE p.\"externalId\" = {provId}) q LEFT JOIN public.\"Cities\" jt ON jt.\"externalId\" = ANY(q.unique_vals);").ToListAsync();
return Ok(result);
型
当我的结果返回给消费者时,我想发送坐标而不是几何。我使用NetTopologySuite.Geometries
。
我在dbcontext
类中有OnModelCreating
方法。我添加了:
modelBuilder.Entity<City>()
.Property(e => e.Center.Coordinate);
型
但我得到了这个错误:
Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware[1]
执行请求时发生未处理的异常。
System.ArgumentException:表达式“e => e.Center.Coordinate”不是有效的成员访问表达式。该表达式应表示简单属性或字段访问:“t => t. MyProperty”。(参数“memberExclusion”)
在Microsoft. MicrosoftFrameworkCore.Infrastructure.ExpressionExtensions. GetInternalQueryAccess [TenderInfo](LambdaExpression memberLambdaExpression)
1条答案
按热度按时间carvr3hs1#
试着做:
字符串