Com interop usando tipos genéricos
Pergunta
Parece que você não pode usar tipos genéricos diretamente com com: veja Interoperando usando tipos genéricos no msdn.
Alguém pode dar um exemplo de como isso poderia ser alcançado?
Nenhuma solução correta
Outras dicas
Eu acho que a ideia é que você não pode marcar um tipo genérico como ComVisible
diretamente, mas você pode ter esse tipo de implementar interfaces não genéricas que são ComVisible
.
Então, dado um genérico Baker<Recipe>
, você precisaria apresentar algo como:
[ComVisible(true)]
public interface IBake
{
Pastry Bake();
}
public class Baker<Recipe> : IBake
{
public Baker(Recipe ingredients) {...}
public Pastry Bake()
{
...
}
}
[ComVisible(true)]
public class Bakery
{
public IBake GetBaker(string recipe)
{
// somehow get recipe type from string
// and create and return Baker<Recipe>
// Client can now call IBake.Bake().
}
}
Suponho que este seja o "indiretamente" do qual o artigo está falando. Não vejo bem o que a coleção de controles do VB.NET tem a ver com isso, no entanto ...
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow