【问题标题】:Porting a .NET 3.5 application to a portable device将 .NET 3.5 应用程序移植到便携式设备
【发布时间】:2010-10-08 13:50:57
【问题描述】:

我使用 C# 中的套接字为 .NET 3.5 编写了一个服务器/客户端应用程序。我有兴趣将客户端部分移植到某种移动设备上,并且正在考虑最好的方法。客户端实际上是一个底层库和一个很大程度上依赖于触摸界面功能的 GUI。

在我看来,我有几个选择:

  1. 只需购买一台 EEE 电脑并在其上运行,它有点便携,但我失去了触控部分
  2. 为移动平台重建库并制作一个新的、精简的 GUI 应用程序
  3. 启动一个 Web 服务器并制作某种 Web 界面以在 iPhone 上运行等等

最好的路线是什么?我在上面的替代方案中会遇到什么问题?我真的更喜欢替代 1 或 2 而不是 3,因为服务器当前是如何完成的,而且我对网络服务器或 ASP.NET 一无所知。哦,我想留在我已经在的环境中,即 .NET,所以请不要 Ruby on Rails 建议。 (不是说 Ruby 不好,我只是不知道也没有时间学习)。

【问题讨论】:

    标签: c# .net mobile webserver porting


    【解决方案1】:

    那么我会选择选项 2。将库移植到 Compact Framework 不会花费您太长时间(希望如此),并且只要您处理的是套接字等,那么我相信 CF 会很好地处理它。

    编辑: 选项 2 的唯一问题是,如果您使用任何不在 CF 中的 .Net 函数。如果是这种情况,您通常可以在 OpenNETCF 中找到它。

    您将需要创建一个新的 GUI,但如果您已经对库进行了良好的编码,那么这应该只是在您的设备上适用的情况下分配方法/事件。

    虽然选项 3 是最好的选择,但我想说的是,它极大地扩展了您的客户群,尤其是随着 WM 和 iPhone 用户数量的增加。

    【讨论】:

      【解决方案2】:

      我会选择选项 2。

      System.Net.Sockets 命名空间中TcpClient Class 类的大部分成员都是在 .Net Compact Framework 中实现的。

      我很想了解您在选择移动设备时的要求。 Windows Mobile Smartphone 和 EEE PC 之间有很多不同之处。

      【讨论】:

      • 目前对移动设备的唯一要求是它是移动的 :) 我并不是针对我希望人们拥有某种设备的特定市场,它是一个封闭的系统,我提供设备。
      • 如果您不担心成本,并且您相信您的客户会乐于随身携带除手机之外的其他设备,那么最好使用 Ultra-Mobile PC,例如带触摸屏的华硕 R2H。
      【解决方案3】:

      尼克拉斯,

      在您决定在移动客户端上使用的技术堆栈之前,您需要确定他们将拥有哪些移动设备,这往往会为您决定技术。

      iPhone - 目标 C 黑莓 - Java 诺基亚 - C/Java Windows - .NET CF

      否则有没有可能把客户端变成一个移动网站,然后通过你的 TCP Socket 东西与服务器通信?这样您就无需担心移动设备上的技术。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-03-21
        • 1970-01-01
        • 1970-01-01
        • 2011-03-07
        • 1970-01-01
        • 2013-05-19
        • 1970-01-01
        • 2018-10-11
        相关资源
        最近更新 更多