为什么我的实体“人”的下面的代码在我的WCF数据服务产生一个错误:
[System.Data.Services.Common.DataServiceKey("PartitionKey", "RowKey")]
public class Person : TableServiceEntity
{
public string Name { get; set; }
public int Age { get; set; }
... etc
错误:
请求错误
服务器遇到一个错误处理请求。 异常消息为“在数据上下文类型‘PersonDataServiceContext’,有一个顶部的IQueryable属性‘人’,其元素类型不是一个实体类型。 确保IQueryable的属性是实体类型的或指定的IgnoreProperties上的数据上下文类型忽略此属性的属性。“。 请参阅服务器日志的更多细节。 异常堆栈跟踪是:
在System.Data.Services.Providers.ReflectionServiceProvider.PopulateMetadata(IDictionary的
2 knownTypes, IDictionary
2个childTypes,IDictionary的2 entitySets) at System.Data.Services.Providers.BaseServiceProvider.LoadMetadata() at System.Data.Services.DataService
1.CreateMetadataAndQueryProviders (IDataServiceMetadataProvider&metadataProviderInstance,IDataServiceQueryProvider&queryProviderInstance,BaseServiceProvider&builtInProvider,对象&dataSourceInstance)在System.Data.Services.DataService1.CreateProvider() at System.Data.Services.DataService
1.HandleRequest()在System.Data.Services.DataService`1。 ProcessRequestForMessage(流消息体)在SyncInvokeProcessRequestForMessage(对象,对象[],对象[])中的System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(对象实例,对象[]输入,对象[]&输出)在System.ServiceModel.Dispatcher。 DispatchOperationRuntime.InvokeBegin(MessageRpc&RPC)在System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage 5在System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc&RPC)(MessageRpc&RPC)在System.ServiceModel.Dispatcher.MessageRpc.Process(布尔isOperationContextSet)
我究竟做错了什么? 如果我添加一个名为是PersonID财产,错误走了,但我需要通过PartitionKey和RowKey访问我的实体,并在班上DataServiceKey装修没有做任何事情。
我使用的Visual Studio 2012,.NET Framework 4.0中,Silverlight的5。