【发布时间】:2013-07-15 15:27:04
【问题描述】:
我在使用 Entity Framework 和从数据库中检索数据时遇到问题。 我有一张桌子。此表包含一个地理类型的字段。 当我运行我的代码时:
IEnumerable<Locatie> a = locatiezoeker.Locaties.Where(x => x.siteId == geselecteerdeWebsiteId);
我收到以下错误:
异常:System.Data.ProviderIncompatibleException 消息:提供程序未返回 DbSpatialServices 实例。 来源:System.Data.Entity 在 System.Data.Common.DbProviderServices.GetDbSpatialDataReader(DbDataReader fromReader,字符串 manifestToken) 在 System.Data.Common.DbProviderServices.GetSpatialDataReader(DbDataReader fromReader,字符串 manifestToken) 在 System.Data.Spatial.SpatialHelpers.CreateSpatialDataReader(MetadataWorkspace 工作区,DbDataReader 阅读器) 在 System.Data.Common.Internal.Materialization.Shaper.b__d[TProperty](DbDataReader 阅读器,Int32 列) 在 System.Data.Common.Internal.Materialization.Shaper.ErrorHandlingValueReader
1.GetValue(DbDataReader reader, Int32 ordinal) at System.Data.Common.Internal.Materialization.Shaper.GetSpatialPropertyValueWithErrorHandling[TProperty](Int32 ordinal, String propertyName, String typeName, PrimitiveTypeKind spatialTypeKind) at lambda_method(Closure , Shaper ) at System.Data.Common.Internal.Materialization.Shaper.HandleEntityAppendOnly[TEntity](Func2 构造EntityDelegate,EntityKey entityKey,EntitySet entitySet) 在 lambda_method(闭包,Shaper) 在 System.Data.Common.Internal.Materialization.Coordinator1.ReadNextElement(Shaper shaper) at System.Data.Common.Internal.Materialization.Shaper1.SimpleEnumerator.MoveNext() 在 MoreLinq.MoreEnumerable.d__172.MoveNext() at System.Linq.Enumerable.<SelectManyIterator>d__142.MoveNext() 在 d:\web\ImportManager.cs:line 461 中的 ImportManager.LeegDatabaseVoorGeselecteerdeWebsite(Guid geselecteerdeWebsiteId) 在 d:\web\ImportTool.aspx.cs:line 204 中的 VerwerkCsv()
我更新了我的 edmx(实际上我重新生成了它)。我更新了我的 NuGet 包。我正在运行.NET 4.5。查看我的 packages.config 的 sn-p
<package id="EntityFramework" version="5.0.0" targetFramework="net45" />
有人知道这是哪里出错了吗?我在任何地方都找不到解决方案。
【问题讨论】:
标签: .net entity-framework