asp.net - 构建具有离线功能的 ASP.Net Web 应用程序

标签 asp.net web-applications webforms iphone-standalone-web-app

我正在构建一个 asp.net (3.5) web 应用程序,想知道你是否知道我可以做的任何方式,以便有一些离线功能。

这是必需的,因为人们将能够在他们的设备上“安装”网络应用程序(例如使用 iPhone 上的“添加到主屏幕”功能),然后在离线时使用该应用程序;使用只会受到限制(此时也不需要服务器调用)。

这可以通过 .aspx 页面完成吗?

编辑- .manifest 添加:

CACHE MANIFEST
index.aspx

/logo.png
/main.css
/main.js

编辑号 2-

我们让它以一种方式离线工作;它在 safari 中工作,但我们不想在 safari 中使用它,我们希望它作为一个独立的应用程序。当我们尝试像这样运行它时,我们得到“无法连接到服务器错误”。这可以通过 .aspx 页面实现吗?

编辑号 3 -

我们已经使用 .html 页面使其工作,但还没有使用 .aspx

编辑号 4-

它现在正在工作,虽然我们不确定为什么!我们上周将 index.aspx 添加到 cache.manifest 的“网络”部分(上周没有用!)这可能有所帮助,但一旦我确定我会向您更新实际发生的情况!

感谢大家的帮助!

最佳答案

对于使用 ASP.NET 的脱机 HTML5 应用程序,请参阅linklink

对于离线功能,有一些替代方案:

01 - 如果您需要在离线应用程序中存储少量数据,并且安全性不是大问题,您可以使用 HTML5 Web Storage(linklinklinklinklink,并查看CanIUse以了解浏览器版本支持)。

主要缺点是它缺乏安全性,基于键值(没有复杂的结构)并且存储大小有很大限制(大多数浏览器为 5MB)。

02 - 如果你需要更大的数据量,你可以看看 IndexDB( linklinklinkCanIUse )或 “10567915” 或 “Web ”,1954576 Sql ( link , link ) linkCanIUse用于浏览器支持)。

Web SQL 的主要缺点是 Firefox 和 IE 不支持它。此外,它已被 W3C 弃用。

IndexDB 很好(link),但似乎 ios 仍然不支持它(参见 canIUse)。

对于方法 1 和 2,您可以在 ASP.NET 应用程序 (link) 中制作响应式设计或专用移动网站。

03 -(更大的灵活性需要更多的努力)在您的 ASP.NET 应用程序和移动 native 应用程序中实现一个应用偶尔连接应用程序概念的 Web 服务(更多信息:linklink)

  • ASP.NET Web 应用程序 => 对于 Web 应用程序,公开具有与离线功能相关的服务的 Web 服务。
  • 移动应用程序 => 使用应用程序的数据库实现原生移动应用程序(例如,为 android 和 iphone 开发应用程序)。然后,您在移动应用程序中创建离线功能,该功能将使用自己的数据库读取和写入(本地)必须离线使用的数据。

  • 然后,您在依赖 Internet(例如循环线程)的移动应用程序中实现静默同步机制,该机制将通过 Web 服务访问 ASP.NET 应用程序来搜索更新。此同步机制将发送本地存储的数据并从 Web 服务中恢复对离线功能有用的数据。

    希望能帮助到你。

    关于asp.net - 构建具有离线功能的 ASP.Net Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18102002/

    相关文章:

    javascript - 在回发 Bootstrap 选项卡后使当前选项卡处于事件状态

    asp.net - 尝试模拟依赖项并向 IoC 容器注册时出现 System.InvalidOperationException

    c# - Javascript 更新为 asp :HiddenField isnot detected server side in IE, 但适用于 Chrome

    web-applications - Meteor 教程(特别是在 Ubuntu 上)

    c# - 将文本添加到配置文件并在 asp.net 的代码后面使用它

    email - 在 Gmail 中,使用 Google Apps Script,是否可以将我收到的已翻译电子邮件转发到另一个电子邮件地址?

    web-applications - 瘦客户端应用程序是什么意思?

    ASP.NET 控件的 JavaScript getElementById 返回空值?

    c# - 从 SQL 成员资格提供程序迁移到 Indentity 2.0

    asp.net - 获取 HTTP 响应自定义 header 时出错