Spring.net方法的替换

1.为什么有时候你再执行某个方法的时候比如某个操作
a.权限验证 b.任务执行
当我执行到这个方法的时候,我可以先验证权限,如果验证不通过则替换到另一个方法去执行
public class MyValueCalculator {
 public virtual string ComputeValue(string input) {
 // ... some real code
 }
 //
2.代码实现
替换类(含替换方法)的定义
/// <summary>
/// Meant to be used to override the existing ComputeValue(string)
/// implementation in MyValueCalculator.
/// </summary>
public class ReplacementComputeValue : IMethodReplacer
{
public object Implement(object target, MethodInfo method, object[] arguments)
 {
 // get the input value, work with it, and return a computed result...
 string value = (string) arguments[0];
 // compute...
 return result;
 }
}

3.
<object id="myValueCalculator" type="Examples.MyValueCalculator, ExampleAssembly">
 <!-- arbitrary method replacement -->
 <replaced-method name="ComputeValue" replacer="replacementComputeValue">
 <arg-type match="String"/>
 </replaced-method>
</object>
<object id="replacementComputeValue" type="Examples.ReplacementComputeValue, ExampleAssembly"/>

 

转载于:https://www.cnblogs.com/kexb/p/5919398.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值