使用隐藏字段传输的可接受数据大小是多少

What is an Acceptable Data Size to be Transfered using a Hidden Field

我有一个 ASP.NET 与 Silverlight 组件集成的 Web 表单应用程序。两者之间的通信是使用 WCF 服务完成的。我想将数据(字符串)从服务器传输到 Silverlight。数据大小保证小于 160 KB。我有两种情况:

  1. 我可以将我的数据写入服务器上的 xml 文件,然后访问它并从 silverlight 使用它(我需要在服务器上创建一个虚拟目录以获得对来自 silverlight 的 xml 文件)。如果我选择这样做,我可以使用 LINQ to XML 以便 smoothly/gradually 使用 xml 文件(无需一次加载所有内容)
  2. 我可以简单地将我的数据放在 aspx 页面的隐藏字段中,然后我可以从 Silverlight 轻松访问它。

显然,第二种情况比第一种情况容易得多,也更容易维护。

问题是:这两种情况我会选择哪一种? (也许我不知道的第三种选择?) 使用第二种方案会导致瓶颈吗?也许从长远来看?

transfer data (string) from the server to Silverlight.

一种方法是使用 SignalR 将数据从服务器传输到 Silverlight 客户端。恕我直言,设置不那么紧张,并且可以根据需要将通信通道用于连续通信。


既然没有程序是凭空存在的...难道没有共享数据库吗?如果是这样,则让页面将其信息发送到数据库,以供 Silverlight 应用程序读取。

如果 160k 只会从服务器到客户端进行一次传输,那么我认为除了隐藏字段外没有必要使用任何东西。

如果页面是 "posted back",这样 160k 也会返回到服务器,然后可能再次返回到客户端,那么我会使用一个简单的服务从服务器到客户端,一次。该服务可以是使用 WCF 的 SOAP 服务或 Web API 服务。由于您使用的是 Silverlight,因此让服务向客户端发送 XML 可能很方便,然后 Silverlight 代码可以使用 XDocument.

轻松解析数据