Я пытаюсь переместить мой APN backoffice с PHP на C# для проблемы с производительностью. Потерпите меня, я новичок в C# и моно.Ошибка «Возникло исключение загрузки типа». используя apns-sharp с mono
Я просто скачал MonoDevelop 2.8.6.4 и APNS-резкое слияние 26 на моем OSX 10.7.2
Я открыл все решение со всеми библиотеками и тестовых исполняемыми и построен весь раствор без ошибок. Я изменил поля (идентификатор токена, файл сертификата, ...) в Program.cs в JdSoft.Apple.Apns.Notifications.Test, чтобы соответствовать моим спецификациям. После нескольких попыток мне удалось получить файл сертификата OK, и теперь соединение с серверами Apple завершено. Я вижу сообщение о том, что я подключен к выходу приложения.
Проблема возникает. Каждый раз, когда приложение пытается отправить сообщение Apple, я получаю сообщение об ошибке «Возникло исключение загрузки типа». Я попытался немного отладить, и ошибка, похоже, исходит от конструктора NotificationPayload.
Выполнение поэтапного отслеживания, похоже, NotificationAlert правильно создается внутри конструктора NotificationPayload. Ошибка появляется при возврате в конструктор уведомлений, где элемент «Полезная нагрузка» появляется в отладчике как «возникло исключение загрузки типа». вместо объекта.
Оттуда объект Notification заканчивается тем же поведением.
Из моих исследований в Интернете это может произойти из версии Newtonsoft.Json.Compact.dll, но я понятия не имею, что делать с этой информацией.
Для получения информации я могу увидеть ту же ошибку при запуске скомпилированного теста на моем сервере CentOS.
И для получения дополнительной информации сообщения приложения (изменено ex.Message к ex.ToString() в программе испытаний, чтобы получить полную ошибку):
Notification Queued!
Sleeping 15000 milliseconds before next Notification...
Connecting...
Connected...
Error: System.TypeLoadException: A type load exception has occurred.
at JdSoft.Apple.Apns.Notifications.Notification.ToBytes() [0x0006c] in /Users/laurent/Downloads/Redth-APNS-Sharp-595275f 2/JdSoft.Apple.Apns.Notifications/Notification.cs:90
at JdSoft.Apple.Apns.Notifications.NotificationChannel.Send (JdSoft.Apple.Apns.Notifications.Notification notification) [0x00000] in /Users/laurent/Downloads/Redth-APNS-Sharp-595275f 2/JdSoft.Apple.Apns.Notifications/NotificationChannel.cs:371
at JdSoft.Apple.Apns.Notifications.NotificationConnection.workerMethod() [0x00035] in /Users/laurent/Downloads/Redth-APNS-Sharp-595275f 2/JdSoft.Apple.Apns.Notifications/NotificationConnection.cs:381
Я не ставил код, как я ничего не изменил с того, что вы видите на https://github.com/Redth/APNS-Sharp.
Я отправляю SOS во все моногуру.
Имейте приятных друзей-разработчиков и заблаговременно за вашу помощь и время. Любое предложение с радостью приветствуется.
'TypeLoadException' предполагает, что у вас нет всех необходимых вам зависимостей. Не можете ли вы получить больше информации из исключения? Вероятно, есть вложенный ... –
Привет, Джон, я бы хотел собрать больше информации об исключении, но я понятия не имею, как это сделать. Любая быстрая идея? Я сказал, что я новичок в mono и C# :-(#shame – C0chett0
Ну, что проглотит исключение? Если это в каком-то открытом исходном коде, вы всегда можете изменить это ... –