【发布时间】:2011-09-25 07:42:28
【问题描述】:
是否可以在不使用 WCF 或 RIA 等服务外观的情况下创建 silverlight 业务应用程序?
(我的意思是,直接从视图模型访问数据层并使用其中的数据而无需服务官僚机构?)
【问题讨论】:
标签: silverlight wcf silverlight-4.0 mvvm
是否可以在不使用 WCF 或 RIA 等服务外观的情况下创建 silverlight 业务应用程序?
(我的意思是,直接从视图模型访问数据层并使用其中的数据而无需服务官僚机构?)
【问题讨论】:
标签: silverlight wcf silverlight-4.0 mvvm
Silverlight 应用程序无法从本地计算机读取/写入(每个应用程序唯一的隔离存储文件夹除外)。因此,除非 SL 应用程序不需要来自外部源或数据库的任何数据,否则您将需要以某种方式从单独的机器中获取数据。您真的需要服务(例如 WCF),您可以使用 WebClient 或 HttpWebRequest 等原语手动进行数据传输,但在这种情况下,您最终将拥有处理线路上的字节,而不是诸如操作、代理和“普通”CLR 类型之类的抽象。在大多数情况下,使用服务有助于应用程序,但如果您不想使用服务,没有什么能阻止您自己创建自己的数据传输层。
【讨论】:
在单用户场景中,您可以使用将其数据保存在用户隔离存储中的数据库,例如 Sterling:
除此之外,如果您的浏览器用完了,您可以使用 COM 自动化直接与数据库对话:
【讨论】:
是的,这是简短的回答,但结果将是更多的努力而没有什么好处。 WCF 和 RIA 实际上很容易使用,但是您将需要合适的 IIS 托管。
Silverlight 业务应用程序的强大之处在于能够使用不同的服务。业务应用程序的价值在于数据,因此限制数据就是限制应用程序的范围。
【讨论】: