求助:怎么解释dynamic作为参数

图片说明

主程序:

 namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            var v = new
            {
                name = "wuc",
                age = 24
            };

            GISCoder coder = new GISCoder();
            coder.Method(v);    //断点1
            Console.ReadKey();
        }
    }
}
 namespace Coder
{
    public class GISCoder
    {
        public void Method(dynamic d)
        {
            string name = d.name;//断点2
            int ag = d.age;
        }
    }
}

错误提示:
图片说明

备注:在项目中碰到的问题,没有解决,然后我把Coder.dll程序集中的类GISCoder的方法Method全部拷贝到调用的程序集下,可以运行通过,求助为什么????

很奇怪,不过你可以试试
public void Method(object d)
{
string name = (string)d.GetType().GetProperty("name").GetValue(d, null);
int ag = (int)d.GetType().GetProperty("age").GetValue(d, null);
}