I'm looking at some old code that I can only assume worked at one time.
MyPage.aspx:
function GetCompanyList(officeId) {
var companyList = document.getElementById('<%= CompanyDropDown.ClientID %>');
if (companyList.length == 0)
PageMethods.GetCompanyList(officeId, OnGetCompanyList);
else
EditCompany();
}
And:
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true" />
Code behind:
[System.Web.Services.WebMethod()]
[System.Web.Script.Services.ScriptMethod()]
public IEnumerable<CompanyMinimum> GetCompanyList(int officeId) {
return (
from c in Repository.Query<Company>()
where !c.IsDeleted && c.TypeEnumIndex == (short)CompanyRelationshipType.Hotel
select new CompanyMinimum() {
id = c.Id,
desc = c.Description
}
).ToList();
}
But at the call to PageMethods.GetCompanyList()
in the first snippet, Chrome reports:
PageMethods is not defined
Can anyone see what has changed to prevent this from working?
Note: I've found similar questions but they all seemed related to this code not working in master pages or user controls, which isn't the case here.
static
, but I am not sure it would complain about the JavaScript proxy beingundefined
if there were no valid page methods. – Regal