我正在使用WCF OData服务(.Net 3.5)将DB表公开为OData服务。当我在本地运行服务时,我可以看到如下所示的可用上下文。 (学生和Comapny背景)
但是当我在IIS 6.0(Server 2003)中部署它时,该服务不会显示可用的上下文。请指教。提前谢谢。
我还发现方法InitializeService根本没有被触发。任何线索。 ?
public static void InitializeService(DataServiceConfiguration config)
{
string path = ConfigurationManager.AppSettings["Log"];
File.AppendAllText(path, string.Format("{0} : Started", DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")));
config.SetEntitySetAccessRule("*", EntitySetRights.AllRead);
config.UseVerboseErrors = true;
config.DataServiceBehavior.MaxProtocolVersion = System.Data.Services.Common.DataServiceProtocolVersion.V2;
}
以下是我的配置Http Handler部分。
<httpHandlers>
<remove verb="*" path="*.asmx" />
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false" />
</httpHandlers>