我创建了WCF服务并遇到了问题。我需要定期更新数据库,但我找不到像Main这样的静态方法,没有客户端交互就可以做到。我能做什么???你在这种情况下建议的是什么?
答案 0 :(得分:3)
如果您的wcf服务是自托管的,那么您可以在发布服务之前在您的应用程序中执行此操作。
如果它在IIS中,那么确实没有application_start类的东西,因为主机可能是在第一次请求时创建的。见WCF application start event
答案 1 :(得分:2)
WCF中没有Main方法(或类似的入口点)。您需要在另一个进程(例如Windows服务,或IIS或自我主机)中托管您的WCF服务,以激活"它并使其可用于其他过程。
WCF中的一个概念是您编写服务代码以执行您需要的功能,而无需担心基础架构和托管。编写服务逻辑后,可以装饰和配置服务以将其公开给其他进程。使用此方法意味着您可以在不重写实际服务逻辑的情况下更改服务向其他进程公开的方式 - 您基本上只需更改配置。因此,主入口点特定于您选择如何托管和向外界公开WCF服务。
正好围绕着#34; WCF托管"你会发现很多信息。
如果您不需要将服务逻辑暴露给外部流程(听起来可能就是您的问题),那么您可能不需要使用WCF而且您可以只写一个简单的旧的Windows服务。