Po napotkaniu pewnych problemów z Massive dzisiaj postanowiłem stworzyć prosty program testowy, aby zilustrować problem. Zastanawiam się, co jest błędem robię w tym kodzie:C# dynamiczne i pracujące z kolekcjami IEnumerable
var list = new List<string>
{
"Hey"
};
dynamic data = list.Select(x => x);
var count = data.Count();
Ostatnia linia zgłasza błąd: „obiekt” nie zawierają definicji dla „count”
Dlaczego "dane" traktowane jako obiekt? Czy ten problem występuje, ponieważ wywołuję metodę rozszerzenia?
Poniższy kod działa:
var list = new List<string>
{
"Hey"
};
dynamic data = list.Select(x => x);
foreach (var s in data)
{
}
Dlaczego w tym przypadku "dane" jest właściwie traktowany jako IEnumerable?
możliwe duplikat [metody Extension i dynamicznego obiektu w C#] (http://stackoverflowflow.com/questions/5311465/extension-method-and-dynamic-object-in-c- sharp) – nawfal