Заголовок должен сказать, что все это ...Можно ли ссылаться на два одинаково именных пространства имен?
EDIT: Видимо, название не сказал, все это, но Джон Скит был в состоянии понять, что я имел в виду в любом случае!
Заголовок должен сказать, что все это ...Можно ли ссылаться на два одинаково именных пространства имен?
EDIT: Видимо, название не сказал, все это, но Джон Скит был в состоянии понять, что я имел в виду в любом случае!
Предполагая, что вы хотите ссылаться на типы в том же пространстве имен (или даже на то же полное имя типа), предоставляемое двумя различными сборками, вы можете сделать это с C# 2 и до extern aliases.
В идеале вы должны стараться избегать попадания в эту ситуацию, но вы можете сделать это, если вам действительно нужно.
Anson Horton имеет blog post об альтернативных псевдонимах и использует их в Visual Studio.
Мммм, да и нет ....
Вам они могут быть два «различных» пространств имен, потому что они находятся в разных файлах или сборки, но в коде они образуют только одно пространство имен - так в реальности вы ссылаетесь только на одно пространство имен.
Точно. Существуют серьезные причины иметь одно пространство имен в разных сборках - например, если какая-то часть написана в C#, а некоторые - в C++/CLI.
Вы никогда не ссылаетесь на пространство имен, извините. Вы ссылаетесь на сборку.
Вы не видели [это сообщение] (http://meta.stackexchange.com/questions/9134/jon-skeet-facts/9135#9135) - он знает ответ, прежде чем вы напишете вопрос! – slugster
Вы имели в виду два одинаково полностью квалифицированных имени для классов, которые находятся в отдельных сборках. Я понятия не имею, как Джон понял, что вы имели в виду, так как ваш вопрос действительно даже не приблизился к тому, чтобы показать это ... но опять же, Джон делает много потрясающих вещей. –
Может быть, он мог бы вывести это из-за того, что в противном случае не было бы проблем, связанных с решением? Кто знает, он Джон Скит и работает таинственным образом! :-) –