2014-10-12 19 views
1

在我的C#项目中,我有这个功能。将iPhone应用连接到桌面应用

public void DoStuff() 
{ 
    Console.WriteLine("I'm doing something..."); 
} 

在应用程序中,这可以通过一个事件(如按钮按下)来正常调用。 DoStuff();

我希望能够通过iPhone应用程序以无线方式调用此函数。

我计划通过在C#应用程序中创建一个TCP服务器来监听传入连接。然后我可以使用我的iphone连接到我的本地IP和打开的端口号,然后将一串文本发送到控制台窗口,这将激活该功能。

我明白这不是做到这一点的最好办法,但它是我唯一的想法...

我听说过一些其他的东西WCF?这是什么?如何使用它来实现我的目标?

我知道这个问题是相当普遍的,但我的编程经验是相当小的。

+0

正如其他人指出的那样,你要找的东西很可能是某种网络服务。 WCF(Windows Communication Foundation)可以提供,尽管它主要是SOAP,Web API也可以。 Web API可能更适合你想要做的事情。谷歌无论是哪一期,你都会得到大量的信息和教程。 – Tim 2014-10-12 09:05:52

+0

@Tim谢谢。我会看看web api。你知道任何可能有助于我的项目的例子吗? – marcus 2014-10-12 09:17:30

回答

0

是的,你也可以使用WCF本地在C#中提供Web服务。

你可以从iphone发送肥皂消息,让WCF做左边的事情,并从WCF获得肥皂响应。

+0

感谢您的回复。你是什​​么意思WCF提供了一个web服务?它是否在应用程序运行时设置本地服务器?作为肥皂信息,我以前没有听说过。你知道关于它的任何文档吗?谢谢。 – marcus 2014-10-12 07:43:57

+0

@marcus了解SOAP。请参阅以下链接:http://www.tutorialspoint.com/soap/ – Shaharyar 2014-10-12 07:50:54

+0

在某种程度上,您可以将WCF视为Web服务器。您可以使用参数调用它并获得相应的响应,就像调用本地方法一样。 – 2014-10-12 07:59:44

0

这不是一个具体的可解决的问题,并且是基于观点的。但是,我会看web api而不是wcf。

您可以使用nuget上的self host软件包在没有IIS的情况下运行web应用程序。

这给你一个比wcf更容易交互的http端点,它总是以SOAP为基础。从IOS你会发现这更容易。

只是一个指针。

+0

谢谢。我不确定从哪里开始?我怎样才能使用这个网页API来从我的iPhone接收命令来激活我的C#应用​​程序中的功能? – marcus 2014-10-12 08:07:21

+0

看看asp.net的教程。它是wcf的替代方案,对于没有Windows客户端的用户而言,它已经变得非常流行,因为这些消息更容易构建。因为你从iOS调用你只需要向一个URL发出一个http请求来执行相关的代码。有很多可以涵盖,但我认为这会比替代方案更容易。 – kidshaw 2014-10-12 13:56:06

相关问题