Class 动态创建Apex类
我通过传递此参数和链接创建了Apex触发器:Class 动态创建Apex类,class,apex-code,frombodyattribute,Class,Apex Code,Frombodyattribute,我通过传递此参数和链接创建了Apex触发器: { "Name" : "COTriggerEmp11", "TableEnumOrId" : "employee__c", "Body" : "trigger COTriggerEmp11 on employee__c (before insert) {system.debug('Record Inserted');}" } URL :https://ap1.salesforce.com/services/data/v28.0
{
"Name" : "COTriggerEmp11",
"TableEnumOrId" : "employee__c",
"Body" : "trigger COTriggerEmp11 on employee__c (before insert) {system.debug('Record Inserted');}"
}
URL :https://ap1.salesforce.com/services/data/v28.0/sobjects/ApexTrigger
现在我想用同样的方法创建Apex触发器。。。
我需要传递哪些参数,我应该在正文部分写些什么。
我很高兴也参考了这份文件:
我自己也尝试过,得到了这个解决方案,效果很好。 要动态创建Apex类,请执行以下操作:
{
"Name": "aaTest1",
"Body": "public class aaTest1{}"
}
这将自动生成类ID。
现在,如果要删除该类,应按如下方式传递该ID:
https://ap1.salesforce.com/services/data/v28.0/sobjects/ApexClass/[Your Class ID]
也许这会帮助像我一样陷入困境的人……谢谢。我想进一步,通过自动化生成一个更大的Apex类。这样做的时候,我发现了一些特殊的注意事项,因为使用JSON来传递代码,如果其他人也希望这样做,我想记录这些代码,以帮助他们 首先,我必须避免使用反斜杠(将出现的
\
替换为\
)。事实上,因为我在Apex中编码(从Salesforce中创建Salesforce类),所以我甚至不得不在我的源代码中避开它们,因为源代码对类代码进行了修改,所以我的Apex语句变成了
string bodystring = batchCode.replace('\\','\\\\');
然后我还需要转义代码中的换行符(将出现的\n
替换为\\n
)
我正在使用的其他源代码中有制表符,这些制表符导致JSON反序列化出现问题。因此添加了mycode.replace('\t','')
,将它们从代码中清除
通过对代码的这些调整,我能够通过自动化创建Apex类