Dynamic ne contient pas de définition d'une propriété à partir d'une référence de projet
-
12-11-2019 - |
Question
Je reçois une erreur qui dit:
«Objet» ne contient pas de définition du «titre»
Tout le code est également allumé github
J'ai une consoleApplication1 qui ressemble à ceci
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);
}
}
Cela fonctionne bien à partir du même projet, mais si j'ajoute ConsoleApplication2 avec une référence à ConsoleApplication1 et ajoute 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:
'Object' ne contient pas de définition de 'Title' **
Même si c'est dans l'objet dynamique.
- O.Title 'O.Title' a lancé une exception de type 'Microsoft.csharp.runtimeBinder.RuntimeBinderexception' Dynamic {Microsoft.csharp.RuntimeBinder.RuntimeBinderexception}
Voici une capture d'écran:
Je fais quelque chose comme ça et j'essaie d'appeler la fonction du film à partir d'un projet de test.
Pas de solution correcte
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow