【问题标题】:Access with Silverlight to a postgres database running under Linux?使用 Silverlight 访问在 Linux 下运行的 postgres 数据库?
【发布时间】:2010-03-24 18:28:44
【问题描述】:

我知道我们无法使用 Silverlight 直接访问数据库。 Silverlight 不存在 Linq 2 SQL,但我可以使用其他东西吗?我也听说过 RIA Services 和 ADO.net,但我不认为它们是为 Linux 服务器实现的。

感谢您以后的回答。

【问题讨论】:

    标签: linux silverlight postgresql orm soap


    【解决方案1】:

    如果您可以创建从数据库公开数据的 REST 或 SOAP Web 服务,则 Silverlight 可以使用其网络堆栈访问该服务。

    【讨论】:

    • 但是问题是在Linux上生成Database的模型。我不会在每次数据库修改时都修改我的模型。
    • 您应该在您的服务器上构建一个应用程序模型,该模型将数据库更改与 Silverlight 中的接口层及其服务接口隔离开来。为什么不尝试使用 IIS 服务器而不是 Linux - RIA 服务会自动执行大部分过程?
    【解决方案2】:

    你需要把一些东西放在一起。

    首先,如果您想创建一个模型,那么您将寻找一个可以在 Postgresql 上运行的 ORM,其中可能有一些,我在Storm 上发现了一些问题,但可能还有其他的。

    然后您需要再次使用 SOAP 公开模型,您可以使用一些 SOAP 实现。 (事实上​​,此时我将调整您的标签以更好地针对这个问题,这不是 Linq-To-SQL、c# 或 ado.net 问题)。

    【讨论】:

    • 我读过 NHibernate 的例子。当我修改数据库时,问题是相同的,我需要更改实现 NHibernate 的类。我已经看到 Mono 支持 ADO.NET 2.0,但我找不到任何例子。
    • @user301089:ADO.NET 2.0 是否支持不是问题,您的问题是创建一个客户端模型,您可以在连接到服务器的 Silverlight 中与之交互。对此没有现有的端到端解决方案。您需要自己构建它,胶水可能是 SOAP。如果您可以使用 SOAP 公开由 ORM 定义的任何类,那么您就有机会创建可以在 Sliverlight 中使用的客户端 SOAP 端点。它不会顺利。
    • 我不明白为什么模型在客户端?我以为它会在数据库附近的服务器端。模型放在服务器端不是更好吗?
    • @user301089:您的问题内容导致了这种假设,您可以只将模型留在服务器上,或者根本没有模型或 ORM。给这只猫剥皮的方法有一百万种。如果愿意,您可以使用 WebClient 从查询 PostgreSQL 的 PHP 页面中获取一些 XML 或 JSON。
    猜你喜欢
    • 2011-04-05
    • 2018-10-06
    • 2010-10-18
    • 1970-01-01
    • 1970-01-01
    • 2021-05-19
    • 2011-07-23
    • 1970-01-01
    • 2021-10-27
    相关资源
    最近更新 更多