2011-06-02 98 views
0

我创建了Ria服务端点。 Silverlight将数据传递给RIA服务。结束点然后将此数据写入/更新到文件系统。我们正在经历以下异常:在Silverlight中尝试访问RIA Services端点时出错

System.ServiceModel.DomainServices.Client.DomainOperationException: 调用操作 “ModifyLogiDashletXmlFile失败。 类型 的异常'System.ServiceModel.DomainServices.Client.DomainOperationException' 被抛出。在 Phoenix.UI.SL.Infrastructure.Services.LogiReportService。 < > c_ DisplayClass8。 <ModifyLogiDashletXmlFile> b。在 System.ServiceModel.DomainServices.Client.InvokeOperation _7( 的invokeOperation操作)。 < > C_ DisplayClass4 1.&lt;Create&gt;b__0(InvokeOperation 1 ARG)在 System.ServiceModel.DomainServices.Client.InvokeOperation`1.InvokeCompleteAction() 在 System.ServiceModel.DomainServices.Client.OperationBase.Complete(例外 误差)在 System.ServiceModel .DomainServices.Client.InvokeOperation.Complete(例外 误差)处 System.ServiceModel.DomainServices.Client.DomainContext System.ServiceModel.DomainServices.Client.DomainContext.CompleteInvoke(IAsyncResult的 asyncResult)。 < > c _DisplayClass38。 <调用invokeOperation > b__34(对象)

类上的属性:

[EnableClientAccess(RequiresSecureEndpoint = true)] 
    [LinqToEntitiesDomainServiceDescriptionProvider(typeof(PhoenixEntities))] // IMPORTANT: Must have this because we are returning/passing EF Entities from Phoenix Context 
    [RequiresAuthentication] 
    public class LogiReportService : DomainService 
    { 
... 

} 

的进入方法:

[Invoke] 
public void ModifyLogiDashletXmlFile(IEnumerable<ParameterNameValuePair> paramNameValuePairs, Guid clientId, string dashletInstanceId) 
{ 

    // Validate Client is has a valid relationship to the User (i.e. no disabled) 
    if (this.PhoenixUser.MembershipClientIds.Contains(clientId)) 
    { 
     ModifyLogiXmlFile(PhoenixUser.UserId, clientId.ToString(), dashletInstanceId, paramNameValuePairs); 
    } 
} 

什么莫名其妙的是其他终端正常工作。这个端点和另一个端点之间的区别在于它是从文件系统写入和读取文件。应用程序域用户拥有完整权限,并且返回的错误似乎不是权限问题。

欢迎所有的想法。我遇到了这个问题。

回答

0

此问题原来是服务器上的权限问题。一个文件正在写入系统。

RIA服务吞噬了错误,代之以一般性错误。我围绕入口方法进行了尝试,并将错误记录到数据库。然后我才发现真正的问题。

相关问题