我创建了 WCF 服务并遇到了问题。我需要定期更新数据库,但我找不到像 Main 这样的静态方法,它可以在没有客户端交互的情况下完成。我能做些什么???在这种情况下你会建议什么?
问问题
5304 次
2 回答
3
如果您的 wcf 服务是自托管的,那么您可以在发布服务之前在您的应用程序中执行此操作。
如果它在 IIS 中,那么真的没有 application_start 之类的东西,因为主机可能是在第一次请求时创建的。请参阅WCF 应用程序启动事件
于 2012-06-04T13:26:37.167 回答
3
WCF 中没有 Main 方法(或类似的入口点)。您需要将 WCF 服务托管在另一个进程(例如 Windows 服务、IIS 或自托管)中以“激活”它并使其可用于其他进程。
WCF 中的一个概念是您编写服务代码来执行您需要的功能,而不必担心基础结构和托管。编写服务逻辑后,您可以装饰和配置服务以将其公开给其他进程。使用这种方法意味着您可以更改服务向其他进程公开的方式,而无需重新编写实际的服务逻辑——您实际上只是更改了配置。因此,主要入口点特定于您选择如何托管和向外界公开 WCF 服务。
只需 Google 搜索“WCF 托管”,您就会发现很多信息。
如果您不需要将服务逻辑公开给外部进程(听起来可能是您的问题的情况),那么也许您不需要使用 WCF,您可以只编写一个普通的旧 Windows 服务。
于 2012-06-04T13:42:48.313 回答