Unable to serialize document properties in PutRevision

Error getting value from ‘IsGone’ on ‘Couchbase.Lite.SavedRevision’.

Error occured on calling the below statement:

SavedRevision revision = document.PutProperties(properties);

  •   $exception	{"Unable to serialize document properties in PutRevision"}	Couchbase.Lite.CouchbaseLiteException
    
  •   this	{DataLite.Models.PreOps}	DataLite.Models.DataObject {DataLite.Models.PreOps}
    
  •   ex	{"Unable to serialize document properties in PutRevision"}	Couchbase.Lite.CouchbaseLiteException
    
  •   CBLStatus	{Status: Exception}	Couchbase.Lite.Status
      Code	Exception	Couchbase.Lite.StatusCode
    
  •   Data	{System.Collections.ListDictionaryInternal}	System.Collections.IDictionary {System.Collections.ListDictionaryInternal}
      HResult	-2146233088	int
      HelpLink	null	string
    
  •   IPForWatsonBuckets	{118255677}	System.UIntPtr
    
  •   InnerException	{"Error getting value from 'IsGone' on 'Couchbase.Lite.SavedRevision'."}	System.Exception {Newtonsoft.Json.JsonSerializationException}
      IsTransient	false	bool
      Message	"Unable to serialize document properties in PutRevision"	string
      RemoteStackTrace	null	string
      Source	"Couchbase.Lite.Storage.SystemSQLite"	string
      StackTrace	"   at Couchbase.Lite.Storage.SystemSQLite.SqliteCouchStore.PutRevision(String inDocId, RevisionID inPrevRevId, IDictionary`2 properties, Boolean deleting, Boolean allowConflict, Uri source, StoreValidation validationBlock)\r\n   at Couchbase.Lite.Database.PutDocument(String docId, IDictionary`2 properties, RevisionID prevRevId, Boolean allowConflict, Uri source)\r\n   at Couchbase.Lite.Document.PutProperties(IDictionary`2 properties)\r\n   at DataLite.Models.DataObject.Save() in C:\\Users\\AJAY\\Documents\\windows\\DataLite\\Models\\DataObject.cs:line 31"	string
    
  •   TargetSite	{Couchbase.Lite.Internal.RevisionInternal PutRevision(System.String, Couchbase.Lite.Revisions.RevisionID, System.Collections.Generic.IDictionary`2[System.String,System.Object], Boolean, Boolean, System.Uri, Couchbase.Lite.Store.StoreValidation)}	System.Reflection.MethodBase {System.Reflection.RuntimeMethodInfo}
      WatsonBuckets	null	object
      _HResult	-2146233088	int
      _className	null	string
    
  •   _data	{System.Collections.ListDictionaryInternal}	System.Collections.IDictionary {System.Collections.ListDictionaryInternal}
      _dynamicMethods	null	object
    
  •   _exceptionMethod	{Couchbase.Lite.Internal.RevisionInternal PutRevision(System.String, Couchbase.Lite.Revisions.RevisionID, System.Collections.Generic.IDictionary`2[System.String,System.Object], Boolean, Boolean, System.Uri, Couchbase.Lite.Store.StoreValidation)}	System.Reflection.MethodBase {System.Reflection.RuntimeMethodInfo}
      _exceptionMethodString	null	string
      _helpURL	null	string
    
  •   _innerException	{"Error getting value from 'IsGone' on 'Couchbase.Lite.SavedRevision'."}	System.Exception {Newtonsoft.Json.JsonSerializationException}
    
  •   _ipForWatsonBuckets	{118255677}	System.UIntPtr
      _message	"Unable to serialize document properties in PutRevision"	string
      _remoteStackIndex	0	int
      _remoteStackTraceString	null	string
    
  •   _safeSerializationManager	{System.Runtime.Serialization.SafeSerializationManager}	System.Runtime.Serialization.SafeSerializationManager
      _source	"Couchbase.Lite.Storage.SystemSQLite"	string
    
  •   _stackTrace	{sbyte[96]}	object {sbyte[]}
      _stackTraceString	null	string
      _watsonBuckets	null	object
      _xcode	-532462766	int
    
  •   _xptrs	{0}	System.IntPtr
    
  •   Static members

Are you putting an actual SavedRevision object into properties? The properties needs to contain only JSON data types (for example, string, float, DateTime etc). For future reference, though, one line of code and an exception is almost always not enough to determine anything. Context is needed (i.e. the path you took to get to this, if it is reproducible in a simple project, etc).