To iterate over items of a repeated extensions, one needs to do:
for (int i = 0; i < msg.GetExtensionCount(ExtId); i++)
{
var ext = msg.GetExtension(ExtId, i);
// use ext.
}
It would be nice if one could write:
foreach (var ext in msg.GetExtensionList(ExtId))
{
// use ext.
}