有时无法从Silverlight进行RIA域服务/上下文调用
|
我有一个非常奇怪的问题:我正在使用RIA服务开发Silverlight业务应用程序。
我在服务器端有一些DomainServices,但其中一个存在问题,有时调用其中一种方法会失败(在SL客户端上,我收到\“ NotFound \”异常,并且请求没有事件不会到达服务器(我在domainservice的构造函数中添加了一个断点)!
是什么让事情变得更加奇怪:
如果从SL客户端的呼叫失败,则我启动Fiddler2,然后第二个(或任何连续的)呼叫工作正常!如果我关闭提琴手,它将再次变得不稳定。
如果我重命名了我想调用的方法(通过重构),也在SL客户端的上下文中调用了重命名的方法,那么每次我调用都成功!
这是我的怀疑方法:
[Invoke]
public void RegisterTrainingProgramCompletion(bool isCompleted, int result, string sportsManNote)
{
//...
}
如果我将此方法重命名为\“ RegisterTpCompletion \”,那么它将起作用(令人难以置信)!
DomainService标记有一些属性:
[EnableClientAccess()]
[RequiresAuthentication()]
public class NextTrainingProgramDomainService : DomainService
我设法以某种方式记录了服务器端,并从WCF堆栈中得到以下异常:
从网络接收到的XML存在问题。有关更多详细信息,请参见内部异常。在System.ServiceModel.Channels.HttpInput.DecodeBufferedMessage(ArraySegment`1 buffer,Stream inputStream)
在System.ServiceModel.Channels.HttpInput.ReadBufferedMessage(Stream inputStream)
在System.ServiceModel.Channels.HttpInput.ParseIncomingMessage(Exception& requestException)处
在System.ServiceModel.Channels.HttpChannelListener.HttpContextReceived(HttpRequestContext上下文,操作回调)
在System.ServiceModel.Activation.HostedHttpTransportManager.HttpContextReceived(HostedHttpRequestAsyncResult结果)
在System.ServiceModel.Activation.HostedHttpRequestAsyncResult.HandleRequest()
在System.ServiceModel.Activation.HostedHttpRequestAsyncResult.BeginRequest()
在System.ServiceModel.Activation.HostedHttpRequestAsyncResult.OnBeginRequest(对象状态)
在System.ServiceModel.AspNetPartialTrustHelpers.PartialTrustInvoke(ContextCallback回调,对象状态)
在System.ServiceModel.Activation.HostedHttpRequestAsyncResult.OnBeginRequestWithFlow(对象状态)
在System.Runtime.IOThreadScheduler.ScheduledOverlapped.IOCallback(UInt32错误代码,UInt32 numBytes,NativeOverlapped * nativeOverlapped)
在System.Runtime.Fx.IOCompletionThunk.UnhandledExceptionFrame(UInt32错误,UInt32字节读取,NativeOverlapped * nativeOverlapped)
在System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode,UInt32 numBytes,NativeOverlapped * pOVERLAP)
因此,由于某些未知原因,clint(SL-app)无法正确刷新请求?我开始担心:(((
我的呼叫者(SL客户端)通过自定义表单身份验证进行身份验证。
我知道您可以说,按原样保留它,但是这使我发疯,我想知道问题出在哪里,所以我不再遇到问题。
谢谢!
再见
沙比
没有找到相关结果
已邀请:
1 个回复
捅瓶啡