Olá, Edla, como vai?
O código que você desenvolveu demonstra uma excelente compreensão da estrutura switch expression no C#. A lógica para capturar o nome do usuário e o período do dia, convertendo a entrada para letras minúsculas com ToLower(), garante que o programa seja mais resiliente a diferentes formas de digitação.
Uma observação importante sobre o funcionamento do switch é que ele precisa ser exaustivo ou conter uma cláusula padrão. No seu código, se o usuário digitar algo diferente de dia, tarde ou noite, o programa apresentará um erro de execução porque não há uma instrução para lidar com valores inesperados. Para solucionar isso e cumprir o requisito de exibir uma mensagem em caso de opção inválida, você pode utilizar o descarte representado pelo sublinhado.
Um exemplo de como aplicar essa tratativa seria adicionar a linha _ => "Opção inválida" ao final do bloco switch. Assim, caso a entrada seja diferente das opções previstas, a variável periodo receberá esse texto informativo, mantendo a estabilidade do sistema.
Parabéns por compartilhar seu exercício e continue praticando suas habilidades de lógica. Caso surjam outras dúvidas, o fórum permanece à disposição.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!