Estoy un poco confundido acerca de lo siguiente.C# .net casting pregunta
Teniendo en cuenta esta clase:
public class SomeClassToBeCasted
{
public static implicit operator string(SomeClassToBeCasted rightSide)
{
return rightSide.ToString();
}
}
¿Por qué se produce una InvalidCastException cuando trato de hacer lo siguiente?
IList<SomeClassToBeCasted> someClassToBeCastedList
= new List<SomeClassToBeCasted> {new SomeClassToBeCasted()};
IEnumerable<string> results = someClassToBeCastedList.Cast<string>();
foreach (var item in results)
{
Console.WriteLine(item.GetType());
}
Y, para añadir, puede obtener "alrededor" esto con 'IEnumerable resultados = someClassToBeCastedList.Select (x => (cuerda) x);' –
jason