Я обнаружил здесь вопросы Должен ли метод поиска возвращать значение null или выдавать исключение, если он не может выдать возвращаемое значение? и Должны ли функции возвращать ноль или пустой объект? , но я думаю, что мой случай совсем другой.
Я пишу приложение, которое состоит из веб-службы и клиента. Веб-сервис отвечает за доступ к данным и возвращает данные клиенту. Я разрабатываю свое приложение следующим образом:
// webservice
try
{
DataTable data = GetSomeData(parameter);
return data
}
catch (OopsException ex)
{
//write some log here
return null;
}
// client:
DataTable data = CallGetSomeData(parameter);
if(data == null)
{
MessageBox.Show("Oops Exception!");
return;
}
Ну, есть правило не возвращать null. Я не думаю, что мне нужно просто повторно генерировать исключение и позволить клиенту перехватить SoapException. Какой ваш комментарий? Есть ли лучший подход к решению этой проблемы?
Спасибо.