【问题标题】:Dynamic choose connection entity framework rest动态选择连接实体框架休息
【发布时间】:2010-11-12 10:58:27
【问题描述】:

我有一个非常简单的实体框架 (.edmx) 文件和一个 .svc 休息服务。

CRUD 操作一切正常。

我有许多共享完全相同架构的数据库。

我的下一步是让客户端传递一个参数,该参数可以是连接字符串或其他标识用户的值,以便服务从正确的数据库中提供数据。

现在,唯一的参数是 ServiceRoot 的 uri

我在数据模型中看到我可以传递一个连接字符串,但是我怎样才能从客户端执行此操作而不创建许多服务文件。

【问题讨论】:

    标签: c# wcf entity-framework rest odata


    【解决方案1】:

    我假设您正在使用 WCF 数据服务来公开 edmx 文件。我不是这个工具集的专家,但我怀疑唯一直接的方法是为每个数据库创建一个服务。

    这是一个很好的问题,我希望在未来的 WCF HTTP 堆栈中解决这个问题。

    与此同时,有一些积极的消息。我过去曾尝试创建大量服务主机(大约 1000 台),我的实验表明启动非常高效,并且不会消耗大量 RAM。关键是用代码而不是通过配置文件创建服务主机。显然,您不想手动编写包含数千个服务条目的 XML 配置文件!

    这可能不是理想的解决方案,但我相信它会奏效。

    【讨论】:

      【解决方案2】:

      如果您使用 WCF 数据服务,您应该能够传递标识数据源的信息以在 HTTP 请求中使用。作为 URL 中的自定义选项或自定义 HTTP 标头(我可能会使用自定义标头,因为它更容易从客户端使用)。 根据您托管服务的方式,您应该能够访问服务器上请求的标头。您可以使用 ASP.NET 方式来执行此操作(静态变量),或者您可以挂钩到 WCF 数据服务的处理管道,这也应该允许您访问这些标头。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-12-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多