Make the ragu: Soak the porcini mushrooms in 1 cup hot water until soft, about 15 minutes. Strain through a fine-mesh sieve over a bowl. Chop; reserve the liquid.
Meanwhile, heat the olive oil in a pot over medium heat. Add the onion, carrot and celery and cook until soft, 5 minutes. Stir in the garlic and tomato paste and cook, stirring, 2 more minutes. Add the portobello and shiitake mushrooms, 1 teaspoon salt and 1/2 teaspoon pepper; cook, stirring, until the mushrooms are soft, 5 more minutes.
Add the porcini mushrooms; cook 2 minutes. Add the reserved porcini liquid, bring to a boil and cook until reduced slightly, about 3 minutes. Add the tomatoes and their juice, 2 cups water and the bay leaves; bring to a boil, stirring occasionally. Reduce the heat to medium low, add the parsley and 1 teaspoon salt and simmer, stirring a few times, until thick, about 1 hour, 30 minutes. Discard the bay leaves. (You can make the ragu up to 1 day ahead; let cool, then cover and chill. Reheat before using.)
Make the lasagna filling: Mix the parmesan, mozzarella and asiago; set 1 1/2 cups of the cheese mixture aside. Combine the remaining cheese mixture in a large bowl with the ricotta, eggs, spinach, nutmeg and 1/2 teaspoon salt.
Preheat the oven to 375 degrees F. Bring a pot of salted water to a boil. Add the noodles and cook as the label directs. Drain and rinse under cold water; shake off the excess water.
Spread 1 cup of the ragu in a 9-by-13-inch baking dish. Add a layer of noodles, then half of the spinach mixture and 2 cups ragu. Repeat with another layer of noodles, spinach mixture and ragu. Top with the remaining noodles and ragu and sprinkle with the reserved cheese. Cover with foil, place on a baking sheet and bake 50 minutes. Uncover and bake until golden, about 25 more minutes. Let rest before serving.
Photograph by Anna Williams
Recipe courtesy Food Network Magazine