O que é o iExpando e onde é usado?
-
26-09-2019 - |
Pergunta
Eu estava navegando nos tipos de mscorlib usando o refletor (como você faz ...) e me deparei com o Interface iexpando, no System.runtime.interOpsVices.expando namespace.
Fiz uma pesquisa no refletor e até verifiquei o MSDN, parece que nenhum tipo de tipo no MSCORLIB implementou essa interface. Também não há exemplos de código no MSDN.
Alguém implementou essa interface em seu próprio código?
Alguém sabe para que é usado exatamente?
Obrigado
Solução
Sim, está um pouco fora do lugar hoje. É a declaração gerenciada do tipo de interface COM. Também presente, note comtypes.iexpando e interropservices.ucomiexpando. Interfaces principais para scripts RunTimes para implementar sacos de propriedades. Em particular para JavaScript, verifique este tópico.
A Microsoft tinha grandes esperanças para o JScript, era um idioma primário suportado ao longo do lado C#, VB.NET e C ++ gerenciado. Isso não deu certo.
Esquecido, mas não muito morto. A classe ExpandoObject está de volta no .NET 4.0
Outras dicas
É a versão .NET de com's IDispatchEx
capacidade de adicionar dinamicamente membros.
Ver http://blogs.msdn.com/b/shrib/archive/2007/09/04/ireflelect-and-idispatch.aspx