NHibernate.Lob.External.AbstractExternalBlobType.Disassemble C# (CSharp) Method

Disassemble() public method

public Disassemble ( object value, ISessionImplementor session, object owner ) : object
value object
session ISessionImplementor
owner object
return object
		public override object Disassemble(object value, ISessionImplementor session, object owner)
		{
			if (value == null) return null;
			IExternalBlobConnection blobconn;
			byte[] identifier;
			if (this.ExtractLobData(value, out blobconn, out identifier))
			{
				IExternalBlobConnection conn = GetExternalBlobConnection(session);
				if (conn.Equals(blobconn))
					return identifier;
			}
			throw new Exception("Unable to cache an unsaved lob.");
		}