本文整理汇总了C#中Rock.Model.FinancialTransactionService.CanDelete方法的典型用法代码示例。如果您正苦于以下问题:C# FinancialTransactionService.CanDelete方法的具体用法?C# FinancialTransactionService.CanDelete怎么用?C# FinancialTransactionService.CanDelete使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Rock.Model.FinancialTransactionService
的用法示例。
在下文中一共展示了FinancialTransactionService.CanDelete方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: gTransactions_Delete
/// <summary>
/// Handles the Delete event of the gTransactions control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="Rock.Web.UI.Controls.RowEventArgs" /> instance containing the event data.</param>
protected void gTransactions_Delete( object sender, Rock.Web.UI.Controls.RowEventArgs e )
{
var rockContext = new RockContext();
var transactionService = new FinancialTransactionService( rockContext );
var transaction = transactionService.Get( e.RowKeyId );
if ( transaction != null )
{
string errorMessage;
if ( !transactionService.CanDelete( transaction, out errorMessage ) )
{
mdGridWarning.Show( errorMessage, ModalAlertType.Information );
return;
}
transactionService.Delete( transaction );
rockContext.SaveChanges();
RockPage.UpdateBlocks( "~/Blocks/Finance/BatchDetail.ascx" );
}
BindGrid();
}
示例2: gTransactions_Delete
/// <summary>
/// Handles the Delete event of the gTransactions control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="Rock.Web.UI.Controls.RowEventArgs" /> instance containing the event data.</param>
protected void gTransactions_Delete( object sender, Rock.Web.UI.Controls.RowEventArgs e )
{
var rockContext = new RockContext();
var transactionService = new FinancialTransactionService( rockContext );
var transaction = transactionService.Get( e.RowKeyId );
if ( transaction != null )
{
string errorMessage;
if ( !transactionService.CanDelete( transaction, out errorMessage ) )
{
mdGridWarning.Show( errorMessage, ModalAlertType.Information );
return;
}
// prevent deleting a Transaction that is in closed batch
if (transaction.Batch != null )
{
if ( transaction.Batch.Status == BatchStatus.Closed )
{
mdGridWarning.Show( string.Format( "This {0} is assigned to a closed {1}", FinancialTransaction.FriendlyTypeName, FinancialBatch.FriendlyTypeName ), ModalAlertType.Information );
return;
}
}
if ( transaction.BatchId.HasValue )
{
string caption = ( transaction.AuthorizedPersonAlias != null && transaction.AuthorizedPersonAlias.Person != null ) ?
transaction.AuthorizedPersonAlias.Person.FullName :
string.Format( "Transaction: {0}", transaction.Id );
HistoryService.SaveChanges(
rockContext,
typeof( FinancialBatch ),
Rock.SystemGuid.Category.HISTORY_FINANCIAL_TRANSACTION.AsGuid(),
transaction.BatchId.Value,
new List<string> { "Deleted transaction" },
caption,
typeof( FinancialTransaction ),
transaction.Id,
false
);
}
transactionService.Delete( transaction );
rockContext.SaveChanges();
RockPage.UpdateBlocks( "~/Blocks/Finance/BatchDetail.ascx" );
}
BindGrid();
}
示例3: gTransactions_Delete
/// <summary>
/// Handles the Delete event of the gTransactions control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="Rock.Web.UI.Controls.RowEventArgs" /> instance containing the event data.</param>
protected void gTransactions_Delete( object sender, Rock.Web.UI.Controls.RowEventArgs e )
{
var rockContext = new RockContext();
FinancialTransactionService service = new FinancialTransactionService( rockContext );
FinancialTransaction item = service.Get( e.RowKeyId );
if ( item != null )
{
string errorMessage;
if ( !service.CanDelete( item, out errorMessage ) )
{
mdGridWarning.Show( errorMessage, ModalAlertType.Information );
return;
}
service.Delete( item );
rockContext.SaveChanges();
}
BindGrid();
}