【发布时间】:2011-03-02 13:01:02
【问题描述】:
我使用我喜欢的类描述了我的应用程序服务(ServiceDescription 类,其中包含 ServiceMethod 描述的集合,为了简化)。
现在,我想将一个应用程序服务公开为一个 WCF 服务(一个合同)。当前的解决方案非常糟糕 - 我有一个控制台应用程序,它为每个应用程序服务 (ServiceDescription) 生成 *.svc 文件。为一个ServiceMethod生成一个方法(Operation)。
这很好用,但我想让它变得更好。可以使用 T4 模板对其进行改进,但我确信 WCF 中仍有更好的方法。
我仍然希望每个应用程序服务有一个 *.svc 文件,但我不想生成方法(用于相应的应用程序服务方法)。 我确信必须有一些接口允许在运行时动态发现操作。也许IContractBehavior...
谢谢。
EDIT1: 我不想使用通用操作契约,因为我希望能够生成具有所有操作的服务代理。
我确信如果我手动编写 WCF 服务和操作,那么 WCF 会使用反射来发现服务中的操作。 现在,我想自定义这一点,以便不使用反射,只需使用我的“操作发现代码”。
【问题讨论】: