1

我想在 C# 中为现有的 Windows 移动应用程序创建 EDB。我发现了一些解决方案,例如:

  • DbfDotNet 那里我找到了一个关于这个项目中问题的协调员帖子。(http://dbfdotnet.codeplex.com/discussions/283054)

  • .NET 和 SQL Anywhere 10

  • 来自 MSDN http://msdn.microsoft.com/en-us/library/aa912256的EDB - 但它在 C++ 中,我不知道如何在 c# 中使用它

  • SQL Server CE - 但“最新版本是支持 .NET Framework 4.0 的 SQL Server Compact 4.0[1],并在此版本中放弃了对 Windows Mobile 的支持。”

请问您能给我建议并分享您的经验吗?我会很感激。

4

1 回答 1

0

我以前试过沿着这条路走,但我没有找到一个干脆的解决方案。

因此,我开始了一个项目,但放弃了,而是要求我的设备直接与 SQL Server 通信。

如果您无法选择直接与服务器通信,那么您的一个数据库(设备上的本地数据库或主服务器上的中央数据库)将需要一个字段来表示某种形式的日期戳和您的设备将需要跟踪此日期戳。

DateTime dateStamp; // on Windows Mobile

private void MockUp() {
  ReadDataFromServer();
  dateStamp = ReadDateFromServer();
  DoStuffInYourProgram();
  UpdateAnythingNewerThan(dateStamp);
}

private void ReadDataFromServer() {
  // read data from your central server
  // and store that data into a DataSet or DataTable
}

private DateTime ReadDateFromServer() {
  // this would be better in the ReadDataFromServer() method,
  // but it is shown here for clarity
}

private void DoStuffInYourProgram() {
  // This isn't a real routine, but rather what you are going
  // to have your device doing
}

private void UpdateAnythingNewerThan(DateTime value) {
  // read records from your server that are newer than the value
  // passed in, then update those values with the new data your
  // device has collected.
}

我希望我可以不那么模糊,但这应该会给你一个大致的想法。

于 2012-08-08T13:56:46.760 回答