很抱歉,如果问题与SQL Server本身没有100%相关。但是我觉得它与主题足够接近,可以在这里发布。
我在ASP.NET Web API项目中使用Entity Framework。在创建我的POCO时,我从浏览器客户端(Google Maps API)接收LatLngBounds。
我从这些传入的坐标创建一个DbGeography(MULTIPOINT)实例,代表我的两个点来重新创建一个矩形。
现在我需要这个MULTIPOINT构造的边界框(多边形)。经过一些研究后,我认为SqlGeometry程序集中的STEnvelope函数可能对此有所帮助,因为我找不到使用DbGeography类型执行此操作的方法。在我尝试保存对象之前,代码中的一切看起来都很好。
请参阅this gist以获取来自EF的错误消息的示例代码。有关从EF生成的SQL,请参阅this gist。
以这种方式尝试是否有意义,或者我错过了一些重要的东西,并且有一种更简单的方法?
答案 0 :(得分:0)
var AWS = require('aws-sdk');
var sns = new AWS.SNS({apiVersion: '2010-03-31'});
exports.handler = (event, context, callback) => {
console.log(JSON.stringify(event))
var payload = {
"default": "The message string.",
"GCM":"{"+
"\"notification\":{"+
"\"body\":\"PUT NOTIFICATION BODY HERE\","+
"\"title\":\"PUT NOTIFICATION TITLE HERE\""+
"}"+
"}"
};
payload = JSON.stringify(payload);
var params = {
TargetArn: 'PUT THE ENDPOINT ARN HERE',
Subject: 'foo2',
MessageStructure: 'json',
Message: payload
}
sns.publish(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
};
答案 1 :(得分:-1)
让它发挥作用。但仍然不确定这是否是没有并发症的方法。但至少存储对象的方法是改变
poi.Shape = DbGeography.FromGml(envelop.AsGml().Value);
到
poi.Shape = DbGeography.FromText(envelop.ToString());
让问题保持开放,也许其他人可以提供更好的解决方案。