NClay.Services功能简介
下面通过一个简单的例子来体现组件AOP功能。
定义一个接口服务
public interface ITest
{
int AddUser(string name,string pwd);
}
服务的实现
[NClay.Services.Service(typeof(ITest))]
public class ITestImpl : ITest
{
#region ITest 成员
public int AddUser(string name,string pwd)
{
return 0;
}
#endregion
}
实现对ITest.AddUser方法的拦截功能
[NClay.Services.AspectContainer]
public class TestAspect
{
[NClay.Services.Aspect(typeof(ITest), "AddUser")]
public int AddUserAspect(string name, string pwd)
{
Console.WriteLine(name);
Console.WriteLine(pwd);
Console.WriteLine("Executing");
int value = (int)NClay.Services.MethodContext.Invoke<int>(name, pwd);
Console.WriteLine(value);
Console.WriteLine("Executed");
return value;
}
}
对于调用这个服务方法的情况:
class Program
{
static void
{
ITest it = NClay.Services.ServiceFactory.GetService<ITest>("");
it.AddUser("henry","123");
}
}
结果:
henry
123
Executing
0
Executed
组件并没有完成还在开发过程所以暂时不提供下载