powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / c#: можно ли как-то "погасить" нужное исключение?
13 сообщений из 13, страница 1 из 1
c#: можно ли как-то "погасить" нужное исключение?
    #39129667
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Непонятно. в проге блок try-catch-finally, Внутри try есть цикл for()
try
for(i= ...) {
try-catch-finally
}
catch()
finally()

Нужно возвращать массив объектов и сделать вид, что для каждого i ошибки с конкретным текстом не было в цикле for(i) .

Прога работает как wsdl-сервис. При отладке на локалхосте всё ок.
Когда переношу на IIS 6, то оттуда возвращается ошибка 500 - внутр. ошибка сервер, и данные не возвращаются, а на локалхосте возвращаются все.

Такое впечатление, что даже если была только одна ошибка в цикле, то клиенту ошибка "глобально" пробрасывается выше.

Или можно ли как-то "погасить" нужное исключение чтобы оно не передавалось выше?
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39129684
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98,
Ошибка в чем-то другом. Попробуйте для начала увеличить лимиты данных в сообщениях сервиса. Это делается в конфиге настройке байндигов.
Код: xml
1.
2.
3.
4.
5.
6.
7.
  <system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="MyServiceBinding" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" messageEncoding="Mtom" />
      </basicHttpBinding>
    </bindings>
  </system.serviceModel>
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39129752
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сейчас попробую. Только сомнения. "нужная" мне исключение происходит если запрос к БД вместо массивов возвращает "ORA-01403: no data found\nORA-06512: at ..."
Для него и задумано. Конечно есть другие варианты организации обмена.
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39129815
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Axeleron, неа, никаких измнений.
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39129821
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98Только сомнения. "нужная" мне исключение происходит если запрос к БД вместо массивов возвращает "ORA-01403: no data found\nORA-06512: at ..."
Кстати, а как это связано с WCF? На локалхосте то же самое исключение происходит? Тогда надо его фиксить сначало.
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39129828
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98,
Попробуйте на клиенте увидеть, что за ошибка. Хотя можео и трейс лони посмотреть.

На сервере в веб конфиге прописать:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
  <system.serviceModel>
    <serviceBehaviors>
      <behavior name="metadataAndDebugEnabled">
        <serviceDebug
          includeExceptionDetailInFaults="true" />
        <serviceMetadata
          httpGetEnabled="true"
          httpGetUrl="" />
      </behavior>
    </serviceBehaviors>
  </system.serviceModel>
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39129920
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так эта настройка и есть, только httpGetUrl="" не написано. Я уже на это смотрю как на шаманство. Добавил httpGetUrl="" , доп. ээфекта не увидел, результат тот же. В главном логе однозначно написано 500 и мой адрес.
Речь не о пользователях, неудобно, что и сервис только рабочий, и только на рабочей БД, другие БД оттуда недоступны.

Буду ждать конца раб.дня, чтобы хранимую обновить - там ехсэпшн этот исключил, надеюсь поможет.
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39129925
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Axeleronexp98Только сомнения. "нужная" мне исключение происходит если запрос к БД вместо массивов возвращает "ORA-01403: no data found\nORA-06512: at ..."
Кстати, а как это связано с WCF? На локалхосте то же самое исключение происходит? Тогда надо его фиксить сначало.
На локалхосте оно с самого начало пофиксино. По шагам все ветки проходил, и по точкам останова, и без них. Клиент только один и тот же - СоапУИ, всё действует как и задумано.

А в IIS: в логе ясно написано ошибка 500.
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39129934
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А не однозначно, куда вопрос впихнуть: Объединенный форум по C# и .... - всё же думал как средствами C# этого добиться.
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39129937
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98,
Что-то кони-люди намешаны. Причем ошибка Оракл и WCF сервис? И что значит нужное тебе исключение? Исключения надо обрабатывать, а сам сервис не должен при этом валиться. Еще с настройками секьюрити что-то может быть, но пока неясно что ты пытаешься сделать...
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39129940
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
exp98всё же думал как средствами C# этого добиться.
Да, путем корректной обработки исключений, используя try-catch конструкцию языка.
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39130057
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не секьюрити не причём. Вопос в корректности.
У мен был выбор:
1 - чтобы запрос к БД не давал исключений
2 - чтобы обрабатывать их в c#

Попробую вечером 1)
Теперь 2). У меня в цикле идёт обращение к БД, оттуда возвращаются данные. Если запрост будет пустой, то вернётся исключение Not Data Found , остальные не интересуют. Я ловлю Not Data Found в c#. Оно вместе с другими ловится во внутреннем блоке catch().
Как написать внутренний
Код: plaintext
catch(e) { throw .....},
чтобы цикл не прервался и чтоб функция в конце возвратила массив значений , а не сообщения об ошибке?

Без throw работает как писал выше: в отладчике ок, в реале при Not Data Found - фигушки.
...
Рейтинг: 0 / 0
c#: можно ли как-то "погасить" нужное исключение?
    #39130153
exp98
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечно интересно сделать в с#, но сделал в базе возврат нулл в случае этого эксепшна.

Практически вопрос решён, теоретически интерес остался.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / c#: можно ли как-то "погасить" нужное исключение?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]