Обработка нулевых ссылок при использовании, например, Linq-To-Xml

Обходной путь - поместить handler.proceed () и handler.cancel () в if else

@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
    if (error.toString().equals("SSLError")) {
        handler.cancel();
    } else {
        handler.proceed();
    }
}

Удачи!

8
задан Ward Werbrouck 10 March 2009 в 13:00
поделиться

1 ответ

Общий подход разумен - хотя я не уверен в Func<T,T> который кажется немного строгим. Если Вы ограничиваете возвратом того же самого, интересно, просто приняв имя (string) поскольку второй аргумент не был бы легче?

Именование ре - возможно, одалживает у LINQ? Это essentaially a Select - как насчет SelectOrDefault:

public static TResult SelectOrDefault<TSource, TResult>(
    this TSource obj, Func<TSource, TResult> selector) where TSource : class
{
    return SelectOrDefault<TSource, TResult>(
        obj, selector, default(TResult));
}

public static TResult SelectOrDefault<TSource, TResult>(
    this TSource obj, Func<TSource, TResult> selector,
    TResult @default) where TSource : class
{
    return obj == null ? @default : selector(obj);
}

(редактирование), возможно, с дополнительным XElement конкретный:

public static XElement SelectOrDefault(
    this XElement element, XName name)
{
    return element == null ? null : element.Element(name);
}
5
ответ дан 5 December 2019 в 23:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: