Pardonnez cet exemple grossier. J'ai un encodeur qui renvoie une interface. Au lieu d'utiliser "is" et "as" pour obtenir l'objet qui implémente l'interface, j'aimerais utiliser la dynamique pour accéder à un objet de type champ de l'objet. Le site champ n'est PAS dans l'interface, mais est commune à tous les objets qui implémentent l'interface.
EDIT : Je dois également mentionner que je n'ai pas le contrôle de l'encodeur ou de ses interfaces et que je ne peux donc pas les modifier.
public class Program
{
public Program()
{
dynamic temp = GetInterface();
string s = temp.Blah;
temp.Blah = s;
}
private ITest GetInterface()
{
return new Test();
}
}
public interface ITest
{
}
public class Test : ITest
{
public string Blah { get; set; }
}