diff --git a/includes/entity.wrapper.inc b/includes/entity.wrapper.inc
index 06b89ad..57cd0ca 100644
--- a/includes/entity.wrapper.inc
+++ b/includes/entity.wrapper.inc
@@ -170,6 +170,13 @@ abstract class EntityMetadataWrapper {
   }
 
   /**
+   * Resets the wrapper cache.
+   */
+  public function reset() {
+    $this->cache = array();
+  }
+
+  /**
    * Returns the options list specifying possible values for the property, if
    * defined.
    *
@@ -859,6 +866,8 @@ class EntityDrupalWrapper extends EntityStructureWrapper {
       if (!$this->id) {
         list($this->id, , ) = entity_extract_ids($this->type, $this->data);
       }
+      // Clear cache.
+      $this->reset();
     }
     // If the entity hasn't been loaded yet, don't bother saving it.
     return $this;
