Existe uma maneira simples de obter todas as variáveis locais no quadro de pilha atual em C # (ou CIL)

Após a minha pergunta anterior, na qual eu queria despejar todas as variáveis na pilha (do quadro atual e de todo o quadro anterior) que podem ser vistas aqui:Existe uma maneira de examinar as variáveis de pilha em tempo de execução em c #?

Fui sugerido para interceptar as chamadas manualmente ou usar a estrutura AOP como PostSharp para simplificar essa tarefa. Eu olhei para o PostSharp e os argumentos de interceptação não incluem as variáveis no quadro de pilha atual. Gostaria de saber se existe uma maneira simples de obter automaticamente todas as variáveis locais no quadro de pilha atual. Suponho que posso executar análise de código e gerar código que copie todos esses valores em uma coleção, mas talvez exista um mecanismo interno que faça isso.

Agradecemos antecipadamente por todas as sugestões.

Edição: Eu deveria ter dado mais detalhes do porque eu quero fazer isso. Eu quero poder suspender a execução no meio de um método. Se eu tivesse o conteúdo da pilha, poderia retomar a execução mais tarde, ou até serializá-la e continuar em outra máquina (assumindo que seja um código relativamente simples, sem threads ou E / S, por exemplo). Não há problema em executar uma ferramenta de análise de código que me permita gerar automaticamente código extra que salva esse estado. Acho que provavelmente terei que analisar o CIL para fazer isso.

questionAnswers(3)

yourAnswerToTheQuestion