在添加/更新实体时,我无法定义我OperationContract
应该是什么。我想ObjectContext
通过 WCF 服务发送一个实体(或实体列表)(这将为我实例化一个业务管理器以进行实际验证)。
如果实体通过了所有验证规则(这很可能需要查询数据库以确定更复杂的业务规则的通过/失败),它将被保存到数据库中,我需要能够传回它的 ID(身份列主键)和并发令牌的值(时间戳列),但如果它失败了,显然我们希望有一条或多条消息说明出了什么问题。在更新的情况下,我们需要的只是并发令牌的新值,但我们同样需要验证消息。
为了使它更棘手,一个实体也可以有多个子/孙实体。例如,行程将有止损,可能有订单。
我只是想知道人们如何在现实世界中处理这个问题。最简单的示例仅显示 WCF 服务的操作,例如:
[OperationContract]
bool AddEntity(Entity e);
[OperationContract]
bool UpdateEntity(Entity e);
有没有人有任何处理这个的好主意?我想我真的只是在这里寻找实用的建议。
我们是否应该尝试在一个服务调用中保存一组对象?
我们是否应该通过故障合约来传达验证消息?
任何建议/意见都会有所帮助,谢谢!