Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Передача исключения в клиентское приложение на С#
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Интересует следующий вопрос: существует ли возможность передать сгенерированное в Cache пользовательское исключение клиентскому приложению, написанному на C#? Например, в методе на серверной стороне создаем исключение: Код: plaintext 1. 2. 3. 4. 5. 6. В клиентском приложении вызываем метод: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. При выполнении данного кода возникает исключение с сообщением <NOCATCH>zgetCurrentState+39^ADB.Object.2. Желательно, чтобы сюда возвращалось сформированное на стороне сервера сообщение об ошибке. Есть ли в Cache такая возможность или придется вместо использования исключений возвращать код выполнения операции (%Status)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2010, 20:09 |
|
||
|
Передача исключения в клиентское приложение на С#
|
|||
|---|---|---|---|
|
#18+
В настоящий момент пока следует использовать %Status, так как исключения вне блока CATCH генерируют ошибку <NOCATCH>: Status Exceptions and User-Defined Exceptions Это касается не только dotNET. Попробуйте вызвать методы Test1 и Test2 из терминала: Class sqlru.test Extends %Persistent { ClassMethod Test1() { $$$ThrowStatus($$$ERROR($$$GeneralError,"Текст исключения")) } ClassMethod Test2() As %Status { #dim ex As %Exception.AbstractException set sc=$$$OK try{ do ##class(sqlru.test).Test1() }catch ex{ set sc=ex.AsStatus() } q sc } } Из .NET потом достаточно легко сгенерировать исключение: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. PS: в InterSystems работают над улучшением обработки ошибок с помощью исключений: Error Handling: Try....Catch ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2010, 09:26 |
|
||
|
Передача исключения в клиентское приложение на С#
|
|||
|---|---|---|---|
|
#18+
servitPS: в InterSystems работают над улучшением обработки ошибок с помощью исключенийЭто вроде бы немного не про то: здесь речь идёт об изменении приоритета Try....Catch и $etrap. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2010, 10:57 |
|
||
|
Передача исключения в клиентское приложение на С#
|
|||
|---|---|---|---|
|
#18+
servit, большое спасибо за ответ! Надеюсь, возможность непосредственной передачи исключения клиентскому приложению появится в будущих версиях Cache'. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2010, 18:09 |
|
||
|
Передача исключения в клиентское приложение на С#
|
|||
|---|---|---|---|
|
#18+
kaelthasservit, большое спасибо за ответ! Надеюсь, возможность непосредственной передачи исключения клиентскому приложению появится в будущих версиях Cache'. Если у Вас есть доступ к WRC , то лучше завести соответствующий запрос на расширение функциональности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2010, 19:00 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=37003023&tid=1557885]: |
0ms |
get settings: |
8ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
160ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 238ms |
| total: | 514ms |

| 0 / 0 |
