Я рекомендую создать собственный класс и сохранить его, вместо того, чтобы просто хранить анонимный тип в «объекте» напрямую.
objcs[0] = new MyClass
{
countHereNow = countHereNow.ToString(),
countWillBeHere = countWillBeHere.ToString(),
countWasHere = countWasHere.ToString()
};
Это позволит вам отбросить его обратно, когда вы получите:
MyClass myClass = result[0] as MyClass;
if (myClass != null)
{
int count = myClass.countHereNow;
}
Существуют приемы, позволяющие работать с анонимными типами, но в большинстве случаев они просто делают код менее обслуживаемым