Ошибка службы Silverlight Ria Services - но только в производстве - PullRequest
0 голосов
/ 20 января 2011

У меня есть приложение Silverlight Ria Services, которое предоставляет 4 разных доменных сервиса.Все отлично работает на локальной машине, но при развертывании на сервере я получал странные ошибки.Я решил перейти к каждому сервису, чтобы убедиться, что он работает.Все они ответили стандартной страницей обслуживания, кроме одной.Это ошибка, которую я получаю при переходе к службе с помощью браузера:

Операция с именем «GetTagCount» не соответствует требуемой подписи.Возвращаемые типы должны быть сущностью, коллекцией сущностей или одним из предопределенных сериализуемых типов.

GetTagCount не возвращает объект, а пользовательский объект.Вот метод:

 [Invoke]
public IEnumerable<TagCount> GetTagCount(long custodian)
{
  var query =
      from tag in this.ObjectContext.Tags
      join docs in this.ObjectContext.TaggedDocuments.Where(d => d.CustodianId == custodian)
      on tag.TagId equals docs.TagId
      into tagGroup

      orderby tagGroup.Count() descending
      select new TagCount
      {
        TagId = tag.TagId,
        TagDescription = tag.Description,
        DocCount = tagGroup.Count(),
        ImageId = tag.ImageId
      };

  return query;
}

Класс TagCount является базовым классом с 4 открытыми свойствами.Почему это работает в отладке, а не на сервере.И что еще более важно, что мне нужно сделать, чтобы это исправить?

РЕДАКТИРОВАТЬ: Это приложение Silverlight 4.0

Спасибо,

-Скотт

1 Ответ

1 голос
/ 20 января 2011

Я выяснил, в чем проблема.Я забыл, что установил Ria Services SP1 Beta на свою машину для разработки, которая добавляет поддержку для сложных типов.Я еще не установил пакет обновления на производственном сервере.После установки все работает как надо.

Надеюсь, это поможет кому-то еще ...

-Скотт

...