Ошибка в Silverlight при попытке связаться с конечной точкой RIA Services - PullRequest
0 голосов
/ 02 июня 2011

Я создал конечную точку служб Ria. Silverlight передает данные в RIA Services. Затем конечная точка записывает / обновляет эти данные в файловой системе. У нас возникает следующее исключение:

System.ServiceModel.DomainServices.Client.DomainOperationException: Вызвать операцию Ошибка ModifyLogiDashletXmlFile. Исключение типа 'System.ServiceModel.DomainServices.Client.DomainOperationException' был брошен. в Phoenix.UI.SL.Infrastructure.Services.LogiReportService. <> C_ DisplayClass8. б _7 (InvokeOperation операция) в System.ServiceModel.DomainServices.Client.InvokeOperation. <> C_ DisplayClass4 1.&lt;Create&gt;b__0(InvokeOperation 1 аргумент) в System.ServiceModel.DomainServices.Client.InvokeOperation`1.InvokeCompleteAction () в System.ServiceModel.DomainServices.Client.OperationBase.Complete (Exception ошибка) в System.ServiceModel.DomainServices.Client.InvokeOperation.Complete (Exception ошибка) в System.ServiceModel.DomainServices.Client.DomainContext.CompleteInvoke (IAsyncResult asyncResult) в System.ServiceModel.DomainServices.Client.DomainContext. <> C _DisplayClass38. b__34 (Object)

атрибуты в классе:

[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);
    }
}

Что сбивает с толку то, что другие конечные точки работают нормально. Разница между этой конечной точкой и другой заключается в том, что она записывает и читает файлы из файловой системы. Пользователь домена приложения имеет полные права, и возвращаемая ошибка не является проблемой разрешений.

Все идеи приветствуются. Я бьюсь об стену с этим вопросом.

1 Ответ

0 голосов
/ 30 июня 2011

Эта проблема оказалась проблемой с разрешениями на сервере. Файл был записан в систему.

Службы RIA глотали ошибку и представляли общую ошибку вместо нее. Я поместил попытку в метод ввода и записал ошибку в базу данных. Тогда я смог обнаружить реальную проблему.

...