c# - 如何在与实体框架连接并使用 dapper 的 asp.net mvc 中插入和检索地理数据?
问题描述
我是使用地理数据类型和使用 dapper 的新手,我已经在互联网上搜索了一段时间,但大多数答案都不是地理类型或已过时。我正在使用谷歌的 API 进行动态跟踪的项目,但现在如果它只显示我介绍的各个位置就可以了,感谢任何帮助。
这是我的地理表的模型,它不完整,但现在我只需要插入和检索数据,我的纬度和经度属性也是空的,这样我就可以通过设备动态引入任何数据
[Table("GEOGRAPHY")]
public partial class GEOGRAPHY
{
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
public GEOGRAPHY()
{
DEV_GEO = new HashSet<DEV_GEO>();
RECORDs = new HashSet<RECORD>();
}
[Key]
public int ID_ROUTE { get; set; }
public DbGeography LAT { get; set; }
public DbGeography LONG { get; set; }
[Required]
[StringLength(2)]
public string ISO { get; set; }
[Required]
[StringLength(80)]
public string COUNTRY { get; set; }
[Required]
[StringLength(80)]
public string NICENAME { get; set; }
[StringLength(3)]
public string ISO3 { get; set; }
public short? NUMCODE { get; set; }
public int PHONECODE { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<DEV_GEO> DEV_GEO { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<RECORD> RECORDs { get; set; }
}
解决方案
由于您提到您使用的是 SQL Server,因此您可以利用特定的 SQL Server 功能支持。我为此写了一篇文章以及示例代码:
https://medium.com/dapper-net/sql-server-specific-features-2773d894a6ae
关键点是
- SQL Server 空间数据类型在 .NET Core 中尚不可用
- 使用“Microsoft.SqlServer.Types”程序集可能会变成版本控制的噩梦,请仔细检查您的 app.config 以确保您引用的是最新版本
推荐阅读
- html - 图像拒绝在 div 中覆盖另一个图像
- python - Python:scipy.optimize.minimize 失败并显示“ValueError: setting an array element with a sequence”。使用 x 和 y 参数调用函数时
- c# - 在主窗体c#中从用户控件创建媒体播放器按钮
- c++ - Is it possible to draw a circle made up of triangles with DirectX 3D 11?
- bash - 使用 awk 或 sed 从输入文件中提取文本块并将每个块保存在单独的输出文件中
- arrays - Angular flat data to object array
- sql - Return the rows with different values in the next column
- json - Parsing a nested JSON using Decodable
- sql - 优化日期之间的查询连接
- ruby-on-rails - error "Couldn't find User without an ID" when trying to create a tweet