我正在寻找有关完成将C#应用程序作为Web应用程序运行的最佳方法的建议。我的应用程序将文件和一些配置设置作为输入,它针对该文件运行一些脚本,然后输出一个新文件。
我希望能够将其作为Web服务运行,以便可以从任何操作系统访问它,方法是在后端保留.exe和引用的DLL。
有没有办法实现这个目标?我知道我可以选择启动虚拟服务器并使用RDP,但我想让它成为本机Web体验。
谢谢!
答案 0 :(得分:0)
只需一个简单的Web应用程序,您就可以轻松完成此任务;你不需要做任何特别的事情。只需使用Process类调用您的exe:
Process myApp = new Process();
myApp.StartInfo.FileName = ConfigurationManager.AppSettings["myAppLocation"];
myApp.StartInfo.CreateNoWindow = true;
myApp.Start();
myApp.WaitForExit();
// Open file and read it
// Additional Info at http://msdn.microsoft.com/en-us/library/system.diagnostics.process.aspx
然而,更好的选择只是从您的EXE中提取代码(您可能在某处获得代码)并将其作为类库引入以供您的Web项目使用。
答案 1 :(得分:0)
除非有理由您绝对需要将现有应用程序保留为后端调用的.exe,否则最简单的解决方案是将您的C#代码集成到一个简单的ASP.NET Web应用程序中。您可以从Web应用程序中引用现有DLL以在服务器端使用tem。查看有关制作简单ASP / NET Web应用程序的教程,例如:
http://www.kirupa.com/net/helloWorld.htm
只需添加一个html输入字段以允许用户上传文件,并为输出文件创建下载链接。
答案 2 :(得分:-1)
wcf是一个服务但不是可执行的东西,你可以看看浏览器WPF应用程序,或Silverlight ......
在它们两者之间,强烈推荐使用silverlight,同时它更具异质性。 bwpf更容易,因为只需像创建wpf应用程序时那样做,但只能在IE下运行
http://silverlight.net/加载东西是用silverlight构建的,它只在IIS下运行
浏览器wpf是你的exe和dll的东西......