You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Apex开发中"Method does not exist or incorrect signature"错误

问题根因
  • 你定义的conList是List<Contact>类型,仅支持存储Contact sObject对象,但循环中你向该列表插入了自定义的ContactWrapper实例,二者类型不匹配触发了方法签名不匹配的报错。
  • 同时你未给ContactWrapper的con属性赋值,就算类型匹配,返回的包装类也没有对应的联系人数据,且方法的返回类型声明也和你实际要返回的包装类列表不匹配。
修复后完整代码
public class MergeDuplicatesController {
    @AuraEnabled
    public static List<ContactWrapper> findContacts(String searchValue, Boolean selected, Boolean isPrime, Integer length) {
        searchValue = '%'+searchValue+'%';
        List<ContactWrapper> wrapperList = new List<ContactWrapper>();
        List<Contact> conList = [SELECT Name, Account.Name FROM Contact WHERE Name LIKE : searchValue];
        for(Contact con : conList){
            ContactWrapper wr = new ContactWrapper();
            wr.isPrime = isPrime;
            wr.selected = selected;
            wr.con = con;
            wrapperList.add(wr);            
        }
        return wrapperList;
    }   
    public class ContactWrapper{
        @AuraEnabled
        public Boolean selected;
        @AuraEnabled
        public Boolean isPrime;
        @AuraEnabled
        public Contact con;
    }
}
核心改动说明
  • 将方法返回值类型从List<Contact>调整为List<ContactWrapper>,和实际返回的包装类列表类型对齐
  • 新增List<ContactWrapper>类型的结果列表存储包装类实例,不再往Contact类型的列表中插入非Contact对象
  • 给每个ContactWrapper实例的con属性赋值为遍历到的Contact对象,保证返回数据完整
  • 最后返回包装类结果列表即可

内容的提问来源于stack exchange,提问作者Anas Ansari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 15:24:04