2012-03-30 91 views
2

我有一个空间模型定义,曾经与SQL Server 2008一起工作,但不再与2012年一起工作。实体框架2011年6月CTP和SQL Server 2012

我不知道为什么,但我无法得到它的工作...

model.Location = DbGeography.Parse("POINT(" + model.Latitude + " " + model.Longitude + ")"); 

我得到这个异常:

System.Reflection.TargetInvocationException是由用户代码未处理
的HResult = -2146232828
消息=异常已被调用的目标抛出。
源= mscorlib程序
堆栈跟踪:
在System.RuntimeMethodHandle.InvokeMethod(对象目标,对象[]参数,签名Sig,布尔构造函数)
在System.Reflection.RuntimeMethodInfo.Invoke(对象OBJ,的BindingFlags invokeAttr,捆扎机粘合剂,对象[]参数, CultureInfo的文化,布尔skipVisibilityChecks)
在System.Reflection.RuntimeMethodInfo.Invoke(对象OBJ,的BindingFlags invokeAttr,粘结剂粘结剂,对象[]参数, CultureInfo的培养物)
在的System.Reflection。 MethodBase.Invoke(Object obj,Object [] parameters)
在System.Data.SqlClient.SqlSpatialServices.GeographyFromText(字符串 geographyText)
在System.Data.Spatial.DbGeography.Parse(字符串geographyText)
在b.Helpers.Repository.saveFoursquareMarkers(列表1 fs) in C:\Users\Administrator\Documents\Visual Studio 2010\Projects\b\Helpers\Repository.cs:line 182
at b.Controllers.KayController.GetMarkers(String lat, String lng, String type, Double dist, String today, String google) in C:\Users\Administrator\Documents\Visual Studio 2010\Projects\b\Controllers\KayController.cs:line 29
at lambda_method(Closure , ControllerBase , Object[])
at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters)
at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary
2参数)
在System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(controllerContext controllerContext,ActionDescriptor actionDescriptor,IDictionary的参数)
在System.Web.Mvc.Async.AsyncControllerActionInvoker。 <> C_ DisplayClass42.b _41()
在System.Web.Mvc.Async.AsyncResultWrapper。 <> C_ DisplayClass8 1.<BeginSynchronous>b__7(IAsyncResult _)
at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult
1.End()
在System.Web.Mvc.Async.AsyncResultWrapper.End [TResult](IAsyncResult的 asyncResult,对象标签)在System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod
(IAsyncResult的 asyncResult)
在System.Web.Mvc.Async.AsyncControllerActionInvoker。 <> c
_DisplayClass37。 <> c_ DisplayClass39.b _33()
at System.Web.Mvc.Async.AsyncControllerActionInvoker。 <> C_ DisplayClass4f.b _49()

的InnerException信息:System.FormatException
的HResult = -2146233033
消息= 24141:一个数量预计在输入的第21位。输入有905651030368。
源= Microsoft.SqlServer.Types
堆栈跟踪:
在Microsoft.SqlServer.Types.OpenGisWktReader.RecognizeDouble()
在Microsoft.SqlServer.Types.OpenGisWktReader。ParsePointText(布尔 parseParentheses)
在Microsoft.SqlServer.Types.OpenGisWktReader.ParseTaggedText(OpenGisType 型)
在Microsoft.SqlServer.Types.OpenGisWktReader.Read(OpenGisType类型, 的Int32 SRID)
在Microsoft.SqlServer。 Types.SqlGeography.GeographyFromText(OpenGisType 类型,SqlChars taggedText,的Int32 SRID)
在Microsoft.SqlServer.Types.SqlGeography.STGeomFromText(SqlChars geometryTaggedText,的Int32 SRID)
在Microsoft.SqlServer.Types.SqlGeography.Parse(的SqlString s)

任何帮助?

回答

1

这是真的不能理解这个错误,但问题是我的电脑本地化。

它期待一个点(。)而不是昏迷(,)作为我的小数点符号。我刚刚从开始>控制面板>区域和语言>附加设置和瞧。它正在工作。

谢谢你的帮助。

+0

我还使用SQL 2008删除了我的GIS软件。通常这个GIS软件会自动更改昏迷点,但这次我不可能意识到这一点。对不起,如果我也为你制造麻烦。 – MrGorki 2012-04-11 07:02:10

0

Unistall CTP并安装.NET Framework 4.5测试版。如果你仍然有问题更新线程。

相关问题