存储过程(Silverlight WCF)上的列名无效

时间:2012-11-05 18:50:36

标签: silverlight entity-framework

我有一个使用WCF RIA实体框架的Silverlight 4应用程序。

突然有一些(我认为3)存储过程停止工作。每个用户重新编译同样的问题当Silverlight应用程序尝试执行相关查询时,所有用户都会收到错误消息。

  

查询'SomeStoredProcedure'的加载操作失败。一个错误   执行命令定义时发生。看到内心   细节例外。 InnerException消息:列名无效   'someColumn'。

     

在   System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand   entityCommand,CommandBehavior行为)

     

在   System.Data.Objects.Internal.ObjectQueryExecutionPlan.Execute [TResultType](ObjectContext的   context,ObjectParameterCollection parameterValues)

     

在System.Data.Objects.ObjectQuery 1.GetResults(Nullable 1   forMergeOption)

     

在   System.Data.Objects.ObjectQuery`1.System.Collections.Generic.IEnumerable.GetEnumerator()

     

在System.Data.Objects.ObjectQuery`1.GetEnumeratorInternal()

     

在   System.Data.Objects.ObjectQuery.System.Collections.IEnumerable.GetEnumerator()

     

在   System.ServiceModel.DomainServices.Server.DomainService.Enumerate [T](IEnumerable的   enumerable,Int32 estimatedResultCount)

     

在   System.ServiceModel.DomainServices.Server.DomainService.Query(QueryDescription   queryDescription,IEnumerable`1& validationErrors,Int32& TOTALCOUNT)

     

在   System.ServiceModel.DomainServices.Hosting.QueryProcessor.Process [TEntity](的DomainService   domainService,DomainOperationEntry queryOperation,Object []   参数,ServiceQuery serviceQuery,IEnumerable`1&   validationErrors,Int32& TOTALCOUNT)

     

在   System.ServiceModel.DomainServices.Hosting.QueryOperationBehavior`1.QueryOperationInvoker.InvokeCore(对象   实例,对象[]输入,对象[]&输出)

现在奇怪的是:

  • 我有相同应用的开发部署,并且在连接到生产数据库时工作正常。

  • 如果我连接到SSMS并执行存储过程,它将返回正确的数据。

  • 所以我所做的只是重新编译存储过程。我基本上选择了存储过程,单击“修改”。它将生成ALTER PROCEDURE脚本,我只是点击执行而不更改任何内部。现在突然所有三个存储过程再次正常工作,即使我只重新编译其中一个。

为了更好地解释这一点,这是按顺序发生的事情:

  1. Silverlight应用程序突然抱怨某些SP不包含某些列

  2. 在SSMS中运行SP,返回正常和预期的结果。

  3. 重新编译SP

  4. 在SSMS中运行SP,返回与#2完全相同的结果。

  5. Silverlight应用程序再次运行

  6. 发生了什么事?

0 个答案:

没有答案