dynamique ne contient pas une définition pour une propriété à partir d'un projet de référence

J'obtiens une erreur qui dit:

'objet' ne contient pas une définition pour 'Titre'

tout le code est également sur github

J'ai un ConsoleApplication1 qui ressemble à ce

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Movie m = new Movie();
            var o = new { Title = "Ghostbusters", Rating = "PG" };
            Console.WriteLine(m.PrintMovie(o));
        }
    }
} 

et Film.cs

public class Movie : DynamicObject
{
    public string PrintMovie(dynamic o)
    {
        return string.Format("Title={0} Rating={1}", o.Title, o.Rating);
    }
} 

il fonctionne très bien à partir du MÊME projet, mais si j'ajoute ConsoleApplication2 avec une référence à ConsoleApplication1 et ajouter exactement le même code

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            Movie m = new Movie();
            var o = new { Title = "Ghostbusters", Rating = "PG" };
            Console.WriteLine(m.PrintMovie(o));
        }
    }
}

J'obtiens une erreur:

'objet' ne contient pas une définition pour 'Titre'**

même si c'est dans la dynamique de l'objet.

  • o.Le titre 'o.Titre " a déclenché une exception de type 'Microsoft.CSharp.RuntimeBinder.RuntimeBinderException " dynamique {Microsoft.CSharp.RuntimeBinder.RuntimeBinderException}

Voici une capture d'écran: dynamique ne contient pas une définition pour une propriété à partir d'un projet de référence

Je suis en train de faire quelque chose comme cela et d'essayer d'appeler la fonction de film à partir d'un projet de test.

InformationsquelleAutor eiu165 | 2012-02-23