Silverlight иногда работает на Mac, иногда нет - PullRequest
2 голосов
/ 20 октября 2011

У меня проблема, которая меня смущает, и я надеялся, что кто-нибудь может получить полезную информацию.

У меня запущено приложение Silverlight 4 в Azure (последний SDK).Silverlight - это типичное приложение, использующее вызовы службы данных WCF для получения и записи данных в базу данных.Все это прекрасно работает на ПК.Однако при запуске на Mac любого браузера он работает на 95% приложения.Однако есть одна часть, которая не работает.

Мое приложение Silverlight берет информацию, введенную в форму, форматирует вызов службы данных WCF, чтобы получить количество записей из файла индекса Lucene.Служба получает счетчик индексов, упаковывает его в одну из моих определенных сущностей (используя модель данных сущности Visual Studio) и отправляет объект обратно из службы в приложение Silverlight.Проблема в том, что он не возвращает правильный номер.Кажется, моя отладка показывает, что возвращается 0.Опять же, он делает это только для Mac.Правильный номер возвращается для любого браузера на любом ПК.Опять же, вдобавок ко всему, все остальные вызовы веб-служб, которые я выполняю из своего приложения Silverlight, правильно возвращаются на Mac.

У кого-нибудь есть идеи относительно того, что может происходить?Пожалуйста, спросите, если я пропустил какие-либо детали.

Спасибо

1 Ответ

2 голосов
/ 21 октября 2011

Хотелось обновить с помощью моего решения на случай, если кто-нибудь еще столкнется с подобной проблемой.

Данные из двух полей в форме - это даты (точные даты начала и окончания).Я читал эти значения, извлекал год и затем создавал свой собственный объект DateTime.Вот где возникла проблема.Похоже, что Mac Silverlight форматирует объект DateTime иначе, чем PC Silverlight.PC Silverlight был отформатирован правильно (01.01.2011, 0:00:00), в то время как Mac Silverlight отформатирован неправильно (01.01.11, 12:00:00, 00:00) в зависимости от моего часового пояса.

Мое решение состояло в том, чтобы самому форматировать дату в строку, поскольку она должна была в конечном итоге быть в строковом формате для передачи в веб-службу, которая все равно запрашивала мой индекс Lucene.

...