亚音速是否以某种方式使用乐观并发?亚音速和乐观并发
Q
亚音速和乐观并发
3
A
回答
3
如果按使用您的意思是内置 SubSonic,然后没有。然而,合理简单地使用SubSonic可以实现乐观并发。
假设你使用SQL Server(如果不是我让你翻译下面的说明成你的数据库提供有效的解决方案),这是一条路可走:
包含列您希望确保并发性的每个表上的类型为
timestamp
。CREATE TABLE Product ( ProductID int NOT NULL IDENTITY(1,1), Name varchar(256) NOT NULL, RowStamp timestamp /* This will hold a timestamp for the table */ )
与数据一起读取时间戳的值,以便日后可以使用它进行比较。
var product = new SubSonic.Select() .From<Product>() .Where(Product.ProductIDColumn).IsEqualTo(productId) .ExecuteSingle<Product>(); var rowStamp = product.RowStamp; // ... Show a form to the user with the data from the product
执行
UPDATE
当比较的时间戳到数据库值的值。如果时间戳不匹配,该行已被修改,可以通知用户的情况(或者你喜欢的,你可以处理它)// ... After retrieving the values from the form var result = new SubSonic.Update(Product.TableSchema) .Set(Product.NameColumn).Equal(newName) .Where(Product.ProductIDColumn).IsEqualTo(productId) .And(Product.RowStamp).IsEqualTo(rowStamp) .Execute(); if (result != 1) { // Notify the user there may be a problem }
2
我找到了一个解决方案在这里,我目前正在测试。
相关问题
- 1. 乐观并发
- 2. TransactionScope和乐观并发
- 3. 乐观锁乐观并发控制
- 4. SQLite和亚音速
- 5. Jaydata,Web Api和乐观并发性
- 6. 乐观并发更新
- 7. 乐观并发返回值
- 8. Azure ARM API - 乐观并发
- 9. MVC4 ApiController乐观并发
- 10. 亚音速和子表
- 11. 亚音速,MVC和ActiveRecord的
- 12. 亚音速3.0和LINQ
- 13. 亚音速3
- 14. 亚音速2.2
- 15. 亚音速
- 16. 亚音速3 - SimpleRepository
- 17. 亚音速与webservice
- 18. 亚音速版本
- 19. 亚音速.Filter()在
- 20. 列亚音速2.2
- 21. 亚音速2.1:SqlQuery.ExecuteJoinedDataSet()
- 22. 亚音速收集
- 23. 亚音速查询选择并(OR)
- 24. 亚音速增量式开发
- 25. 有谁亚音速3使用亚音速在.net
- 26. 背景音乐长度和速度
- 27. 乐观锁定 - Hibernate的并发问题
- 28. ServiceStack.OrmLite支持乐观并发性
- 29. MVC 4乐观并发异常
- 30. 实体框架 - 乐观并发问题
很好的答案。工作很好。 – 2009-10-02 05:30:34
这似乎确定。必须自己实现所有的逻辑或者创建一个通用的方式。有什么我可以学习的手动文档api等?我的搜索没有任何结果。 Thx very musch – Mantzas 2009-10-02 17:42:04
请查阅官方文档http://subsonicproject.com/docs/ – dcharles 2009-10-03 06:22:58