2011-11-14 41 views
1

我感到有点困惑,因为我检索的信息与我的情况无关。WCF RESTful服务初始化

简而言之,我在VS2008(.NET 3.5sp1)中创建了一个新的WCF服务应用程序。在项目中,我有Service.svc文件(加上service.svc.cs),IService.cs,最后是web.config文件。 我写过我的方法,并根据需要修改了web.config文件以获取REST服务,并且所有工作都正常。但是现在我需要设置记录器对象(特别是log4net对象),然后我开始想知道正确的位置来完成初始化。

这里来的东西我不明白。在互联网上搜索信息,我发现许多文章谈论应用程序文件(作为global.asax),或者在Main方法中进行初始化,在其中创建ServiceHost对象。

我的解决方案中没有这样的文件,因此我的困惑就出现了。我是否创建了错误的项目类型?还是仅仅添加一个global.asax文件就足够了?什么是正确的地方做这样的操作(初始化......)?

回答

2

您可以通过右键单击项目,选择添加文件,然后选择“全局应用程序类”,将global.ascx/global.ascx.cs文件添加到WCF项目中。

初始化的'正确位置'取决于你想要做的记录的方式和类型。如果你只有一个记录器,并且没有基于端点等进行记录,那么在你的应用程序的某个地方静态初始化它(例如静态构造函数)是没有害处的。然后从应用程序中的任何地方使用这个记录器(只是不要公开set方法)。

+0

谢谢,它的工作原理! –