Concurrency RIA中的并发性

Concurrency RIA中的并发性,concurrency,weborb,Concurrency,Weborb,这将是我在这个平台上的第一个问题。我已经使用Flex、WebORB和ASP.NET进行了大量的开发。我们已经通过消息传递(悲观并发控制)解决了并发问题。这很好,但它也使整个应用程序依赖于消息传递。没有消息传递,没有并发控制。 我知道ASP.NET在数据集中有版本控制,但是如果您正在使用RIA,您将如何使用它呢。似乎很难在客户端会话中存储每个数据集。。。因此,如果客户机需要所有产品,我需要将数据集存储在客户机的会话中。当客户端将某些内容更改为产品并保存产品时,我可以更新数据集(存储在会话中)并尝试

这将是我在这个平台上的第一个问题。我已经使用Flex、WebORB和ASP.NET进行了大量的开发。我们已经通过消息传递(悲观并发控制)解决了并发问题。这很好,但它也使整个应用程序依赖于消息传递。没有消息传递,没有并发控制。 我知道ASP.NET在数据集中有版本控制,但是如果您正在使用RIA,您将如何使用它呢。似乎很难在客户端会话中存储每个数据集。。。因此,如果客户机需要所有产品,我需要将数据集存储在客户机的会话中。当客户端将某些内容更改为产品并保存产品时,我可以更新数据集(存储在会话中)并尝试保存它。。。 似乎需要大量的工作和大量的内存(因为这些产品将保存在客户机的内存中,所以数据集需要保存在服务器端会话中)。 我认为最简单的方法是为所有DTO提供一个版本号。如果客户端试图保存DTO,我可以将版本号与数据库中的版本号进行比较


Lieven Cardoen

这是我以前做过的事情-由于原始数据来自SQL Server数据库,我们只是在每个DTO中使用了一个rowversion类型的列,以确定在用户处理数据时它是否发生了更改

此时,您可以呕吐错误,也可以尝试找出合并更改的方法,但至少可以看出它在您的下面发生了更改:)