public override T Resolve(int startingIndex, DbDataReader reader, IIdentityMap map) { var json = reader.GetString(startingIndex); var id = reader[startingIndex + 1]; var typeAlias = reader.GetString(startingIndex + 2); return(map.Get <T>(id, _hierarchy.TypeFor(typeAlias), json)); }
public override T Resolve(int startingIndex, DbDataReader reader, IIdentityMap map) { if (reader.IsDBNull(startingIndex)) { return(null); } var id = reader[startingIndex + 1]; var typeAlias = reader.GetFieldValue <string>(startingIndex + 2); var version = reader.GetFieldValue <Guid>(startingIndex + 3); var json = reader.GetTextReader(startingIndex); return(map.Get <T>(id, _hierarchy.TypeFor(typeAlias), json, version)); }