将C#应用程序与现有网站集成

时间:2011-07-19 12:32:33

标签: c# php c++ apache mono

我有一些需要用C#编写的后端功能(出于政治原因,而非技术原因)。

C#'模块'是为网站提供功能,用PHP编写。

完成的解决方案的托管环境如下:

  1. 操作系统:Linux
  2. Web服务器:Apache
  3. 后端db:mySQl和/或PostgreSQL。
  4. C#'模块'只是业务逻辑,(即没有GUI)。

    到目前为止,这是我提出的解决方案,我想知道我是否正在走正确路径和/或我的建议解决方案是否可以改进:

    1. 我猜我必须编写和部署C#模块作为独立的可执行文件

    2. 将RESTful API添加到C#可执行文件中,或使用来自Web应用程序的TCP / IP直接与C#可执行文件通信。我更喜欢RESTful API,因为它更高级别,但可能有性能方面的考虑 - 我想听听选择其中一个的优缺点 - 帮助我决定是使用RESTful API还是TCP / IP与网络应用程序进行通信。

    3. 将C ++绑定到C#的“最佳”方法是什么(我将在C#应用程序中使用C ++库)。

    4. 我将在服务器上安装mono,以托管C#应用程序。

      由于我不经常使用C#,我想知道“C#专家”是否可以告诉我我是否正确地采用这种方式,和/或是否可以改进这种方法?

1 个答案:

答案 0 :(得分:2)

  1. 是。我的猜测是你希望它是一个与WCF通信的可执行文件,或者是与IIS通信的Web服务,与WCF进行通信。

  2. 根据您的要求,我会调查HTTP Long Polling技术。

  3. C#可以通过DllImport使用PInvoke来使用任何可用的C ++库调用。