internal bool TryGetAltRowId(TdsParserStateObject stateObj, out int id)
{
byte token;
if (!stateObj.TryReadByte(out token))
{ // skip over ALTROW token
id = 0;
return false;
}
Debug.Assert((token == TdsEnums.SQLALTROW), "");
// Start a fresh row - disable NBC since Alt Rows are never compressed
if (!stateObj.TryStartNewRow(isNullCompressed: false))
{
id = 0;
return false;
}
ushort shortId;
if (!stateObj.TryReadUInt16(out shortId))
{
id = 0;
return false;
}
id = shortId;
return true;
}