如何创建运行和触发API集成?

时间:2015-01-29 10:02:23

标签: c# web-services api

我有两个独立的系统,每个系统都有自己的API。当客户端在系统2中进行更改时,它应该触发我的代码,该代码使用来自两个系统的API来传输并将更改保存到系统1.这应该是双向的。

我使用C#来实现这一目标。

你会称之为这样的集成,如何让它始终运行,以便每次客户端进行更改时都会触发它?

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:1)

我认为这里有很多可能的答案,

听起来您需要为每个系统的每个客户端操作调用一个服务,WCF可能是一个实现选项。

以下是一些可能有用的链接:

https://msdn.microsoft.com/en-us/library/vstudio/ms735119%28v=vs.90%29.aspx http://www.codeproject.com/Articles/33995/Getting-Started-with-WCF

假设您有一个带有两个公开方法的WCF服务

Method1()
{
   UpdateSys2()
}
Method2()
{
   UpdateSys1()
}

您可以执行以下操作:

On client Action in System 1
--> Invoke Method1()

On client Action in System 2
--> Invoke Method2()

答案 1 :(得分:1)

无论如何,我会让两个系统完全分开。这将使两个系统松散耦合,因为如您所知,较少的依赖性=较少的复杂性,更容易维护等。

您可以实现从两个现有系统发布更改事件的同步服务。基于这些事件,启动同步任务,负责执行更改。

要启动这些任务,可以使用调度程序(如Quartz.NET)定期检查新事件,因为您可能不希望并行执行更改;或者你也可以在其间放一个队列。