首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在WebForms中不使用存储过程绑定数据模型的最有效方法?

在WebForms中不使用存储过程绑定数据模型的最有效方法?
EN

Stack Overflow用户
提问于 2015-06-04 19:58:16
回答 1查看 96关注 0票数 0

我刚刚开始为一家新公司工作,并且加入了为我们的外部产品构建支持工具的团队。目前,支持工具是一个由大量随机片段组成的混搭,它试图通过大量不同的技术来解决各种不同的问题。主要产品正在转换为执行应用程序大多数功能的功能模型,但是它使用存储过程获取数据并将数据加载到这些模型。

在编写新工具的过程中,我正在寻找一种更好的方法将数据从数据库绑定到模型,以便可以在应用程序中对其进行操作。每个客户端都有自己的数据库,每次创建存储过程时,都必须跨多个不同的数据库创建存储过程,以便在全球范围内传播。如果我能减轻这种头痛,那将是非常有益的。

我想使用DbContext的方式类似于我以前使用MVC的项目中使用它的方式,但我不确定如何才能最好地做到这一点。每个客户端都有自己的数据库,名称中有一个客户端ID,它们的连接字符串本质上是"DATABASE_CLIENTID",所以当支持人员选择适当的客户端时,它会在运行时更改连接字符串以获取适当的数据。我只需要知道什么方法最适合与这些数据交互来创建我们的工具。

该公司正转向使用铆钉、打字本、Ajex等单一页面风格的网站,因此,我们的目标是能够最好地在内部模仿这一点。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-04 20:10:56

我认为您可以通过使用最新的实体框架6轻松地做到这一点,当您使用数据库优先方法生成模型时,它会生成部分实体类,您想要做的是添加另一个文件来为同一个分部类实现以下内容。因此,例如,如果您的实体模型名为TemplateEntities,那么使用以下代码创建一个新文件:

代码语言:javascript
复制
The generated TemplateEntities class is marked as partial.

您所要做的就是添加另一个文件,其中包含公开要使用的构造函数的部分类定义的另一部分:

代码语言:javascript
复制
partial class TemplateEntities
{
  public TemplateEntities( string nameOrConnectionString )
    : base( nameOrConnectionString )
  {
  }
}

然后将连接字符串传递到此构造函数。

存储过程对于非常复杂的事务是很好的,但是如果它只用于加载数据,实体框架应该可以像预期的那样工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30653014

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档