相关疑难解决方法(0)

实体框架和连接池

我最近开始在我的.NET 4.0应用程序中使用Entity Framework 4.0,并对与池化相关的一些事情感到好奇.

  1. 据我所知,连接池由ADO.NET数据提供程序管理,在我的情况下是MS SQL服务器.当您实例化新的实体context(ObjectContext)时,这是否适用,即无参数new MyDatabaseModelEntities()

  2. a)为应用程序创建全局实体上下文(即一个静态实例)或b)使用using块为每个给定操作/方法创建和公开实体上下文有哪些优点和缺点.

  3. 我应该了解的某些场景的任何其他建议,最佳实践或常用方法?

.net database ado.net entity-framework connection-pooling

264
推荐指数
3
解决办法
11万
查看次数

实体框架数据在具有中央数据库的多用户环境中更新

让我解释一下这个标题.

我在应用程序(TestApp)中使用Entity Framework Code First .出于调试目的,TestApp连接到SQLExpress数据库(中央数据库服务器).

为了简单起见这里,该数据库包含一个表的"产品"和TestApp显示在数据网格数据库中的所有"产品"和TestApp可以添加/删除"产品"或修改的产品名称.

public class Product {
 public int ProductId { get; set; }
 public string ProductName { get; set; }
}

public DbSet<Product> Products { get; set; }
Run Code Online (Sandbox Code Playgroud)

我有3台PC安装并运行TestApp(我称之为Client_X).如果我通过Client_1添加新的"产品",则不会在Client_2和Client_3上的TestApp中直接显示.仅当Client_2和Client_3再次获取所有数据(手动刷新)时,才会看到新添加的记录.

我想知道的是:如何通过EF Code First了解数据库中的更改?Client_2和Client_3如何自动更新其数据网格,因为添加或删除了新项目?

我不确定它是否被要求太多,但是一个简单的示例项目或简单的代码来证明这将是有用的.

仅供参考:我是EF Code First的新手.(我使用的是.NET 4.0和EF Code First 4.3.1)

提前致谢.

方案:

Client_3<
         \
          \
           \
            \
             \>
Client_1 <---> [Central Database] <----> Client_2
Run Code Online (Sandbox Code Playgroud)

更新/编辑:

好的,很明显,实体框架本身不会在多个客户端之间进行任何同步.

所以我会问另一个问题: 我正在考虑使用Client-Server方式:

  • 单个服务器应用程序,它首先创建数据库并使用实体框架代码.
  • 与该单个服务器应用程序通信的多个客户端.

    现在什么是确保客户使用相同数据并查看每个人更新/更改的最佳方法?(我希望代码示例.)

c# entity-framework multi-user

8
推荐指数
1
解决办法
5765
查看次数

C#多用户应用程序中的技术,其中所有客户端的数据都是从中央数据库更新的

在多用户环境中:如何确保所有客户端都能看到每个客户端的更改?做这个的最好方式是什么?

在过去,我创建了一个C#应用程序并将其安装在2台PC上.它连接到中央SQL Express服务器(客户端应用程序使用Entity Framework Code First作为ORM).当client1向数据库添加记录时,这并不直接显示给client2.仅当client2再次获取所有数据(硬刷新)时,才会看到更改.

现在我正在寻找一个关于如何"同步"(?)可以或应该完成的解决方案.我喜欢工作实体框架代码首先,一个解决方案可以保持这个很好.该应用程序仍处于非常早期阶段.我想有一个中央数据库和多个客户端连接到它,但我不确定这是否是一个很好的解决方案.如果您的建议/解决方案需要客户端连接到的中央服务器应用程序(以及服务器应用程序执行数据库处理的位置),这将没有问题.

如果可能的话,基本的示例解决方案或一些显示如何始终使用最新数据的基本代码可能会非常有用!

类似的问题:

提前致谢

c# database multi-user ef-code-first

8
推荐指数
1
解决办法
5366
查看次数