Я получаю сообщение об ошибке:
«объект» не содержит определения для «Заголовок»
весь код также на github
У меня есть ConsoleApplication1, который выглядит следующим образом
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));
}
}
}
и Movie.cs
public class Movie : DynamicObject
{
public string PrintMovie(dynamic o)
{
return string.Format("Title={0} Rating={1}", o.Title, o.Rating);
}
}
он отлично работает из того же проекта, но если я добавлю ConsoleApplication2 со ссылкой на ConsoleApplication1 и добавлю точно такой же код
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));
}
}
}
Я получаю ошибку:
'object' не содержит определения для 'Title' **
даже если он находится в динамическом объекте.
- o.Title 'o.Title' вызвал исключение типа 'Microsoft.CSharp.RuntimeBinder.RuntimeBinderException' dynamic {Microsoft.CSharp.RuntimeBinder.RuntimeBinderException}
Вот снимок экрана:
Я делаю что-то подобное и пытаюсь вызвать функцию фильма из тестового проекта.