Does JSON Serialization Break SObject Equality?
Question: When an SObject containing Decimal fields is serialized and deserialized using JSON, the equality operator (==) no longer returns true, even if the field values appear identical. Why does this happen, and how can it be fixed? For example: Interestingly, if the Amount field values are logged: The values…
What Are Controllers and Extensions in Visualforce?
Question Explain the usage of controllers and extensions in Visualforce, and in which scenarios should each be used? Answer In Visualforce, controllers and extensions are both used to manage the logic of your page, but they serve distinct roles and have different characteristics. Understanding the difference is crucial to using…
How to Deserialize a JSON String in Apex?
Question: How can I deserialize the following JSON string into Apex? I’ve tried using the following code to deserialize it: The code works, but I’m looking for a more efficient and simpler way to handle this. Any suggestions? Answer: A more efficient and structured approach would be to generate Apex…
How Do I Work with JSON in Apex?
Question This is a canonical question and answer developed by the community to help address common questions. If your question was closed as a duplicate or you were directed here, please review the resources provided and use them to refine your specific inquiry. To explore more canonical Q&A, visit the…
How to use Tooling API in Apex?
Question: How can I use the Tooling API in Salesforce to create an Apex class programmatically within an Apex controller? I am particularly interested in seeing an example that demonstrates how to achieve this. I have already generated MetadataService from WSDL but am open to other approaches, including REST-based methods….
Why Is DML Not Allowed in Constructors?
Question: Why is it not allowed to perform DML operations within an Apex class constructor? Is there a specific reason for this restriction? Despite searching extensively, the rationale behind this limitation doesn’t appear to be well-documented. Answer: DML operations are not allowed in constructors because of potential side effects that…
How to Avoid DML Operations from For Loops in Salesforce
Table Of Contents In Salesforce development, optimizing code for performance and scalability is paramount. One common mistake that developers make is performing DML (Data Manipulation Language) operations inside loops. While this may seem like an easy solution, it can result in hitting Salesforce’s governor limits, causing system errors or slow…
How to Make a PATCH HTTP Callout in Apex?
Question: How can I make a PATCH HTTP callout from Apex? I discovered that the HttpRequest class in Apex does not directly support the PATCH method. When attempting to send a PATCH request, I receive a System.CalloutException: Invalid HTTP method: PATCH. This is problematic because I need to call out…

