我用C#开发了一个WCF服务。基本上它只是一个调用我的业务逻辑实现的层。例如,我有很多方法,如:
public FooBusinessEntity GetEntityById(int id)
{
//Static Class with static methods that access sql server
return FooEntityBusiness.GetFooById(id)
}
所以我有10个实体,那么我将有10个这样的方法。我无法使用泛型,因为WCF无法处理。我可以使用枚举器或类似的东西。但有一次我看到了一个项目实现,他用两件事来实现服务:
1 - 代表 2 - 反思
我理解它的方式是这样的:
public TResponse GetResponse(TRequest request, TResponse response, MethodBase method)
{
return Server.Process<TRequest, TResponse>(request, response, GetMethodBase())
}
private MethodBase GetMethodBase(TRequest request, TResponse response)
{
return ServiceInvoker.ResolveMethod(request, response)
}
我现在没有实施,因此我想问一下是否有人做过类似上面的例子。如果您需要更多信息,请不要犹豫。