从 MVC 加载 WKT 多边形以供 OpenLayers 渲染
Load WKT polygons from MVC for OpenLayers to render
OL3 和 MVC5。我有一个 mvc 控制器,returns wkt 来自 oracle 的多边形字符串。我想在开放层中渲染这些,但我找不到让 ol 开心的格式。
var tAVectorSource = new ol.source.Vector({
format: new ol.format.WKT(),
url: function (extent) {
return '/MyController/Map/MyWKTPolygons';
},
strategy: ol.loadingstrategy.bbox
});
var tAVectors = new ol.layer.Vector({
source: tAreaVectorSource,
style: tAStyle
});
我的控制器返回这个:
{"TAId":4,"PId":21,"TType":1,"TShape":"POLYGON ((-1.2695884640625E7 4445506.375, -1.21430920625E7 4451637.25, -1.2152876E7 5012485.703125, -1.2373014640625E7 5006005.84375, -1.2373014640625E7 5162735.015625, -1.2695884640625E7 5156153.28125, -1.2695884640625E7 4445506.375))","TAcres":0}
现在我得到
Unexpected character: {
在此之前,我正在测试返回几个功能,意外字符是定义列表的 [ 大括号。
OL 喜欢什么?我在哪里可以找到满足它的规范或示例?
您的控制器正在 returning JSON,其中包含一个 WKT 字符串作为属性。使用 ol.format.WKT
时,您的控制器应仅 return WKT 字符串 (POLYGON (...)
).
如果您也对获取要素的属性感兴趣,则可能需要使用 GeoJSON。
OL3 和 MVC5。我有一个 mvc 控制器,returns wkt 来自 oracle 的多边形字符串。我想在开放层中渲染这些,但我找不到让 ol 开心的格式。
var tAVectorSource = new ol.source.Vector({
format: new ol.format.WKT(),
url: function (extent) {
return '/MyController/Map/MyWKTPolygons';
},
strategy: ol.loadingstrategy.bbox
});
var tAVectors = new ol.layer.Vector({
source: tAreaVectorSource,
style: tAStyle
});
我的控制器返回这个:
{"TAId":4,"PId":21,"TType":1,"TShape":"POLYGON ((-1.2695884640625E7 4445506.375, -1.21430920625E7 4451637.25, -1.2152876E7 5012485.703125, -1.2373014640625E7 5006005.84375, -1.2373014640625E7 5162735.015625, -1.2695884640625E7 5156153.28125, -1.2695884640625E7 4445506.375))","TAcres":0}
现在我得到
Unexpected character: {
在此之前,我正在测试返回几个功能,意外字符是定义列表的 [ 大括号。 OL 喜欢什么?我在哪里可以找到满足它的规范或示例?
您的控制器正在 returning JSON,其中包含一个 WKT 字符串作为属性。使用 ol.format.WKT
时,您的控制器应仅 return WKT 字符串 (POLYGON (...)
).
如果您也对获取要素的属性感兴趣,则可能需要使用 GeoJSON。