A 有一个带有网络服务及其单元测试的 .Net 解决方案。
Web 服务有它的 .svc,从测试项目我需要 .cs(据我所知,从服务的 URL 生成。像这样的 svcutil.exe [WebServiceUrl]
)。
为了使单元测试自动化,我需要在每个构建中的测试项目上更新这个 .cs,所以我添加了一个预构建事件,它调用 svcutil.exe 来获取 wsdl 并生成 .cs。此步骤需要运行服务,但我需要从项目本身创建它,我不希望运行服务来创建 .cs。有没有办法做到这一点?还是另一种方法?
最佳答案
您可以在仅用于此目的的单独程序集中自行托管 WCF 服务,然后运行 svcutil.exe 以获取 WSDL 输出并从中生成 .cs 文件。
当然,这意味着您必须先构建 WCF 主机程序集,然后运行 svcutil.exe,然后构建单元测试程序集和解决方案中的其余程序集。这一切都可以通过构建工作流程中的预构建事件来完成。
关于c# - 使用 WCF 从 .svc 创建 .cs 文件的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12093386/