Section 10.9.3 of the C# spec czary to. Krótka wersja jest taka, że jest zabroniona, aby użytkownik mógł być pewny, że konwersje między typami odniesienia i interfejsami odniosą sukces wtedy i tylko wtedy, gdy typ odwołania faktycznie implementuje ten interfejs, oraz że gdy ta konwersja ma miejsce, to ten sam obiekt jest w rzeczywistości odwoływany.
Określenie niejawnej lub jawnej konwersji między typami odniesienia daje użytkownikowi oczekiwanie, że nastąpi zmiana odniesienia; w końcu to samo odniesienie nie może być obu typów. Z drugiej strony użytkownik ma takie same oczekiwania w przypadku konwersji między typami referencji i typami interfejsów.
User-defined conversions are not allowed to convert from or to interface-types. In particular, this restriction ensures that no user-defined transformations occur when converting to an interface-type, and that a conversion to an interface-type succeeds only if the object being converted actually implements the specified interface-type.
Najprostszym rozwiązaniem jest, dobrze, po prostu zaimplementować interfejs dla betonu klasy :) Zobacz także http://stackoverflow.com/questions/308986/user-defined-conversion-to-interface – nawfal
zacznijmy że ani "public" ani "static" nie są dozwolone w definicjach członków interfejsu .. – quetzalcoatl