我需要为位置数据添加计算列,因为我有一个单独的纬度和经度列,但需要DbGeography
属性来计算距离。
EF Core有一个方法HasComputedColumnSql
,但我找不到EF 6.0的等价物。我可以从迁移中创建计算列的选项是什么?
答案 0 :(得分:2)
首先将列标记为计算:
[DatabaseGenerated(DatabaseGeneratedOption.Computed)]
public double Distance { get; private set; }
在迁移中,您只需运行一些自定义SQL:
Sql("ALTER TABLE Blah ADD Distance AS (...)");
...
是您在计算列中需要的SQL。