Pergunta

Aqui está o problema: você inclui vários assemblies e adiciona 'using namespaceX' no topo do seu arquivo de código.
Agora você deseja criar uma classe ou usar um símbolo que seja definido em vários namespaces, por exemplo System.Windows.Controls.Image & System.Drawing.Image

Agora, a menos que você use o nome totalmente qualificado, haverá um erro de criação/construção devido à ambiguidade, apesar das declarações 'using' corretas no topo.Qual é a saída aqui?

(Outra postagem da base de conhecimento..Encontrei a resposta após cerca de 10 minutos de pesquisa porque não sabia a palavra-chave certa para pesquisar)

Foi útil?

Solução

Usar apelido

using System.Windows.Controls;
using Drawing = System.Drawing;

...

Image img = ... //System.Windows.Controls.Image
Drawing.Image img2 = ... //System.Drawing.Image

Como:Usar o qualificador de alias de namespace (C#)

Outras dicas

Esta página tem um artigo muito bom sobre namespaces e a instrução using:

http://www.blackwasp.co.uk/Namespaces.aspx

Você deseja ler a parte sobre "Criando Aliases" que permitirá criar um alias para um ou ambos os espaços de nome e referenciá-los assim:

using ControlImage = System.Windows.Controls.Image;
using System.Drawing.Image;

ControlImage.Image myImage = new ControlImage.Image();
myImage.Width = 200;
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top