从网页访问控制台应用程序

时间:2016-07-09 19:49:14

标签: asp.net web iis-8

我最近创建了两个C#控制台应用程序。第一个将一组命令输出转换为XML,第二个使用模板将XML转换为Word文档。

我想知道如何将其发布到网上,即拥有一个可以上传命令输出的网页,执行两步转换,最后可以下载Word文档。

网页是应该在ASP.NET中创建还是有其他(更好的)选项?我是否需要以其他格式重写控制台应用程序?

1 个答案:

答案 0 :(得分:2)

这个问题相当广泛,有足够的空间进行新颖的解释,但这里有一个简短的高级步骤,了解实现建议结果可能需要发生的事情(语言不可知):

  • 获取允许用户启动自己的计算机(即AWS)的托管服务提供商。
  • 启动与相关“控制台”程序兼容的计算机。
  • 在机器上安装“控制台”程序。
  • 在机器上安装编程语言(即Node.js,PHP,ASP.NET,甚至C#都可以)。
  • 在计算机上安装Web服务器(即NGINX,Apache),将其配置为提供公共请求并使用所选语言运行。
  • 在服务器请求中,从所选语言中执行适当的命令。语言通常带有exec方法(即在node.js中:require('child_process').exec(command,options,callback)
  • 获取所述命令的结果并将其发送回客户端。或者(对于下载),将结果写入系统上可供互联网公开使用的路径并将用户重定向到该URL(可能需要其他配置以确保浏览器下载文件而不是仅仅提供服务)

上面的步骤应该让你非常接近你想要的。至于你的问题:

  

网页是应该在ASP.NET中创建还是其他(更好)   选项?

“更好”的选项是您目前最舒服的选择,您可以随时通过合理的努力进行更改(假设您的“控制台”应用程序不是毫无疑问的独角兽)。

  

我是否需要以其他格式重写控制台应用程序?

不,除非您有充分理由这样做(即多环境兼容性)。您还可以重写以显着简化(即绕过使用CLI并在C#中执行所有操作)。

尝试思考这些高级步骤,开始处理实现,并在遇到问题时在StackOverflow上发布更具体的问题。

我希望有所帮助!