我在我的 asp.net 网站中有一堆通过 ajax 调用使用的 JSON 服务类。直到几天前,所有课程都运行良好,其中一个课程停止在客户端可见。
它被称为 ExceptionsJSONService ,当我尝试通过 javascript 实例化它时
var service = new ExceptionsJSONService();
我得到“预期对象”。我不知道什么会改变,因为它工作正常。我检查了 web.config 并通过以下方式定义了服务:
<behavior name="ExceptionsJSONServiceAspNetAjaxBehavior">
<enableWebScript />
</behavior>
然后:
<service name="ExceptionsJSONService">
<endpoint address="" behaviorConfiguration="ExceptionsJSONServiceAspNetAjaxBehavior" binding="webHttpBinding" contract="ExceptionsJSONService" />
</service>
它是通过 ScriptManager 在母版页中定义的:
<asp:ServiceReference Path="~/Services/ExceptionsJSONService.svc" />
我有包含以下内容的服务文件:
<%@ ServiceHost Language="C#" Debug="true" Service="ExceptionsJSONService" CodeBehind="~/App_Code/ExceptionsJSONService.cs" %>
我有实际的类定义文件,其标题是:
[ServiceContract(Namespace = "")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class ExceptionsJSONService : BaseJSONService {}
由于长度的原因,我省略了类的主体,但它构建得很好并且除了我所有其他 JSONService 类的名称之外是相同的。