实体框架2011年6月CTP和SQL Server 2012

时间:2012-03-30 20:25:26

标签: sql entity-framework ctp

我有一个空间模型定义,它曾经用于SQL Server 2008,但不再用于2012.

我不知道为什么,但我不能让它发挥作用......

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

我得到了这个例外:

  

System.Reflection.TargetInvocationException未被用户代码
处理   的HResult = -2146232828
  Message =调用目标抛出了异常   来源= mscorlib程序
  堆栈跟踪:
  at System.RuntimeMethodHandle.InvokeMethod(Object target,Object [] arguments,Signature sig,Boolean constructor)
  在System.Reflection.RuntimeMethodInfo.Invoke(Object obj,BindingFlags invokeAttr,Binder binder,Object []参数,   CultureInfo culture,Boolean skipVisibilityChecks)
  在System.Reflection.RuntimeMethodInfo.Invoke(Object obj,BindingFlags invokeAttr,Binder binder,Object []参数,   文化信息文化)
  在System.Reflection.MethodBase.Invoke(Object obj,Object [] parameters)
  在System.Data.SqlClient.SqlSpatialServices.GeographyFromText(String   geographyText)
  在System.Data.Spatial.DbGeography.Parse(String geographyText)
  at b.Helpers.Repository.saveFoursquareMarkers(List 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 2 parameters)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.InvokeSynchronousActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary
2   参数)
  在System.Web.Mvc.Async.AsyncControllerActionInvoker。<> c_ DisplayClass42.b _41()
  在System.Web.Mvc.Async.AsyncResultWrapper。&lt;&gt; 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,Object tag)
  在System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult)   asyncResult)
  在System.Web.Mvc.Async.AsyncControllerActionInvoker。&lt;&gt; c
_DisplayClass37。&lt;&gt; c_ DisplayClass39.b _33()
  在System.Web.Mvc.Async.AsyncControllerActionInvoker。&lt;&gt; 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   type,SqlChars taggedText,Int32 srid)
  在Microsoft.SqlServer.Types.SqlGeography.STGeomFromText(SqlChars   geometryTaggedText,Int32 srid)
  在Microsoft.SqlServer.Types.SqlGeography.Parse(SqlString s)

任何帮助?

2 个答案:

答案 0 :(得分:1)

这个错误确实无法理解,但问题是我的电脑本地化。

期待一个点(。)而不是昏迷(,)作为我的小数符号。我只是从开始&gt;控制面板&gt;区域和语言&gt;其他设置和瞧。它现在正在运作。

感谢您的帮助。

答案 1 :(得分:0)

取消安装CTP并安装.NET Framework 4.5 beta。如果您仍然有问题更新线程。