1

我陷入了我的代码中,我的 LINQ Select 子句返回匿名类型。我尝试将每个匿名类型添加到 List。项目添加成功,但是具有此方法的类是继承Interface1的泛型类,从该Iterface1继承的所有类的方法返回类型为T

例如:

Interface Interface1<T>
{
    List<T> GetData();
    List<T> GetCalculatedValues();
}

我创建了一个类

public class DemoClass: Interface1<dynamic>
{
    List<dynamic> GetData()
    {
        //LINQ which return anonymous object type 
        return list<dynamic>;
    }

    List<dynamic> GetCalculatedValues()
    {
        //LINQ which return anonymous object type 
        return list<dynamic>;

    }
}

我无法创建任何强类型类,因为 LINQ 查询返回无法事先定义属性的匿名类型对象。

我需要一些建议,如何将 dynamic 转换为 DynamicObject ,有没有办法。我不想让 Object 有 Type T。除了 Object type ,我们可以强制转换 Dynamic Object 吗?或者任何人已经在 C# 中实现了 DuckTyping。Will DuckType 将在这种情况下提供帮助。

4

0 回答 0