Console C#?[fechado]
-
09-06-2019 - |
Pergunta
Alguém sabe se existe um aplicativo de console c#, semelhante ao console Python ou Ruby?Conheço toda a diferença entre "Compilado versus Interpretado", mas com o poder de reflexão do C# acho que isso poderia ser feito.
ATUALIZARBem, foram necessárias apenas cerca de 200 linhas, mas escrevi uma simples...Funciona muito como osql.Você insere comandos e os executa com go.
SharpConsole http://www.gfilter.net/junk/sharpconsole.jpg
Se alguém quiser, me avise.
Solução
Dada a sua menção ao "poder de reflexão do C#", não tenho certeza se você está procurando um console C# interativo para pequenos trechos de código de sua preferência (à la Ruby's irb
) ou um meio de interagir com um aplicativo compilado existente atualmente em execução como um processo.
No caso antigo:
Outras dicas
Encontrei isso no reddit: http://tirania.org/blog/archive/2008/Sep-08.html
Citação do site:
A ideia era simples:crie um shell C# interativo alterando o compilador para gerar e executar código dinamicamente, em vez de apenas gerar código estático.
Se você não ter usar o console e quiser apenas um local para testar alguns trechos ad hoc de C#, então LinqPad é uma boa opção.Acho muito legal/fácil de usar.
Não tenho certeza do que você deseja que este aplicativo realize.Se for apenas para testar algum código sem ter que criar um projeto e toda a sobrecarga para apenas testar uma ideia, então SnippetCompilador poderia ser uma boa opção.
Eu só queria te dar outra opção.
Parece que Miguel De Icaza estava me perseguindo:
O Google revela alguns esforços nesse sentido.Uma delas, em particular, ilustra por que isso é menos simples do que pode parecer. http://www.codeproject.com/KB/cs/csi.aspx possui um interpretador básico usando a capacidade integrada do .NET para compilar código c#.Um problema importante é que a abordagem do autor cria um novo mini assembly .NET para cada linha interpretada.C# pode ter o poder reflexivo de ter um console estilo python ou ruby, mas as bibliotecas do .NET framework são voltadas para compilar C#, não para interpretá-lo dinamicamente.Se você está falando sério sobre isso, você pode querer dar uma olhada http://www.paxscript.net/, o que parece uma tentativa genuína de interpretar C#.
Eu acredito que você está procurando Agressivo =)