首页  / system.spatial.dll
system.spatial.dll
运行环境:windows10
更新时间:2026-08-26
软件分类:系统文件
软件大小:44 KB
软件语言:简体中文
软件类型:国产软件
软件授权:免费软件
软件版本:
选择系统
windows10
选择版本
{{item.label}}
暂无版本
选择位数
64位
选择子版本
立即下载

System.Spatial.dll 的核心功能与缺失影响

System.Spatial.dll 是 .NET 平台 System.Spatial 程序集的物理文件,随 WCF Data Services 5.x 与 Microsoft.Data.OData 一并发布,负责为 OData v3 客户端与服务端提供空间(Geospatial)数据类型模型与序列化能力。

一、核心功能

1. 双几何类型体系

定义 Geography(基于椭圆体的大地坐标系,如 SRID 4326)与 Geometry(平面笛卡尔坐标系)两条继承链,涵盖 Point、LineString、Polygon、MultiPoint、MultiLineString、MultiPolygon 与 Collection 等几何原语。

2. 多格式序列化与反序列化

通过 IWellKnownText、IWellKnownBinary、IGmlObject、IGeoJsonObject 等接口,实现 WKT、WKB、GML、GeoJSON 的读写,并为 OData 载荷中的 Edm.Geography / Edm.Geometry 提供转换管道。

3. 空间运算抽象层

借助 SpatialImplementation 抽象注入具体几何运算实现,为 geo.distance、geo.intersects、geo.length 等 OData 空间函数提供运行时支撑。

4. 坐标系与元数据管理

维护 CRS/SRID 标识、维度(经纬度+高程)与有效性校验,保证空间数据在传输与持久化过程中的语义一致。

二、缺失 DLL 的典型影响

  • 加载失败:应用启动或首次触达空间类型时抛出 FileNotFoundException、TypeLoadException 或“Could not load file or assembly 'System.Spatial'”,业务中断。
  • OData 链路崩溃:客户端枚举或提交含地理字段的实体失败,服务端反序列化请求载荷时抛异常。
  • 查询不可用:含 geo.distance、geo.intersects 的 $filter 表达式无法解析或执行,返回 500 错误。
  • 版本错配:程序集版本号(如 5.0.0.0 与 5.6.x)不一致且缺少 bindingRedirect,导致运行时绑定失败。
  • 数据风险:序列化链路中断可能造成空间字段丢失或被截断,影响地图、选址、轨迹分析等功能。
处理建议:通过 NuGet 安装匹配版本的 System.Spatial 与 Microsoft.Data.OData,在 app.config / web.config 中补齐 bindingRedirect,确认 DLL 已随部署目录或 GAC 正确分发,并统一解决方案内各项目引用版本。