2010-03-03 3 views

ответ

10

В основном, если вы хотите обеспечить конверсии между типами. LINQ к XML обеспечивает хорошие примеры ... Там в неявное преобразование из строки в XName, так что вы можете написать:

XName name = "element"; 

но есть явное преобразование из XAttribute в int (и многих других типов), так вы должны включать в себя приведение в коде:

int value = (int) element.Attribute("age"); 

Подумайте очень внимательно, прежде чем предоставить неявные преобразования - они редко хорошая идея; LINQ to XML использует их с большим эффектом, но они могут ввести в заблуждение. Даже явные пользовательские преобразования могут удивить неосторожного читателя.

+0

Почти в большинстве случаев я избегаю использовать их в качестве дизайнера библиотеки (если не уверен, что они не будут злоупотребляться и жалуются). –

Смежные вопросы