本文整理汇总了C#中Domain.GetDocumentCommandsToExecute方法的典型用法代码示例。如果您正苦于以下问题:C# Domain.GetDocumentCommandsToExecute方法的具体用法?C# Domain.GetDocumentCommandsToExecute怎么用?C# Domain.GetDocumentCommandsToExecute使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Domain
的用法示例。
在下文中一共展示了Domain.GetDocumentCommandsToExecute方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SubmitChanges
public void SubmitChanges(Domain.Transactional.DocumentEntities.Invoice document, BasicConfig config)
{
int sequence = 0;
var envelope = new CommandEnvelope();
envelope.Initialize(document);
List<DocumentCommand> commandsToExecute = document.GetDocumentCommandsToExecute();
CreateCommand createCommand; //= commandsToExecute.OfType<CreateCommand>().First();
if (TryGetCreateCommand(commandsToExecute, out createCommand))
{
envelope.CommandsList.Add(new CommandEnvelopeItem(++sequence, createCommand));
//_commandRouter.RouteDocumentCommand(createCommand);
_auditLogWFManager.AuditLogEntry("Invoice",
string.Format("Created Invoice: {0}; for Order: {1}", document.Id,
document.OrderId));
}
List<AfterCreateCommand> lineItemCommands;
if (TryGetAfterCreateCommands(commandsToExecute, out lineItemCommands))
{
foreach (var item in lineItemCommands)
{
envelope.CommandsList.Add(new CommandEnvelopeItem(++sequence, item));
// _commandRouter.RouteDocumentCommand(item);
var _item = item as AddInvoiceLineItemCommand;
_auditLogWFManager.AuditLogEntry("Invoice",
string.Format(
"Added Product: {0}; Quantity: {1}; for Invoice: {2};",
_item.ProductId, _item.Qty, document.Id));
}
}
ConfirmCommand confirmCommand;
if (TryGetConfirmCommand(commandsToExecute, out confirmCommand))
{
envelope.CommandsList.Add(new CommandEnvelopeItem(++sequence, confirmCommand));
// _commandRouter.RouteDocumentCommand(confirmCommand);
//send notification
// _notifyService.SubmitInvoiceNotification(document);
_auditLogWFManager.AuditLogEntry("Invoice",
string.Format("Confirmed Invoice: {0}; for Order: {1}", document.Id,
document.OrderId));
}
_commandEnvelopeRouter.RouteCommandEnvelope(envelope);
document.CallClearCommands();
}