CS0845 de erro do compilador

Mensagem de erro

Uma expressão lambda de árvore não pode conter um operador unindo com um lado esquerdo literal nulo.

Como nulo por si só não tem um tipo, o operador unindo nulo não pode operar nele.

Para corrigir este erro

  • Converter o literal nulo a um objeto.

Exemplo

O código a seguir gera CS0845:

// cs0845.cs
using System;
using System.Linq;
using System.Linq.Expressions;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Expression<Func<object>> e = () => null ?? null; // CS0845
            // Try the following line instead.
            // Expression<Func<object>> e = () => (object)null ?? null;
        }
    }
}