Combina dos diccionarios con LINQ

Mi pregunta ha sido marcada como un posible duplicado de esta pregunta:¿Cómo combinar dos diccionarios sin bucles?

Creo que mi pregunta es diferente porque estoy preguntando cómo combinar dos diccionarios de una manera particular: quiero todos los elementos de Dictionary1 más todos los elementos de Dictionary2 que no están (es decir, la clave no existe) en Dictionary1.

Tengo dos diccionarios como este:

var d1 = new Dictionary<string,object>();
var d2 = new Dictionary<string,object>();

d1["a"] = 1;
d1["b"] = 2;
d1["c"] = 3;

d2["a"] = 11;
d2["e"] = 12;
d2["c"] = 13;

Me gustaría combinarlos en un nuevo diccionario (técnicamente, no tiene que ser un diccionario, podría ser simplemente una secuencia deKeyValuePairs) de modo que la salida contenga todos losKeyValuePairs de d1 y solo los KeyValuePairs ded2 cuya clave no aparece end1.

Conceptualmente:

var d3 = d1.Concat(d2.Except(d1))

Pero eso me está dando todos los elementos de d1 y d2.

Parece que debería ser obvio, pero debo estar perdiendo algo.

Respuestas a la pregunta(6)

Su respuesta a la pregunta