So the type being returned by the activator (not shown here) is just a POCO that I created. Nothing special about it at all. But despite, the return type of `GetWrapper` or `GetWrapper<T>` the object being returned is of type dynamic so none of the properties of the actual class being return are being seen by intellisense. Any ideas?

![enter image description here](https://i.stack.imgur.com/2bnZ9.png)

UPDATE:
Sorry, Jon:

```
public static T GetWrapper<T>(object type, dynamic obj)
   where T : class, IRedditObject
{
    return GetWrapper(type, obj) as T;
}

public static object GetWrapper(object type, dynamic obj)
{
    return Activator.CreateInstance(Types[type.ToString()], obj);
}

public class LinkWrapper : IRedditObject
{
    private readonly dynamic _link;

    public string Kind { get { return "t3"; } }
    public dynamic Data { get { return _link.data; } }

    public LinkWrapper(dynamic link)
    {
        _link = link;
    }

    public string Domain { get { return Data.domain; } }
}

[TestMethod]
public void Test()
{
    var proxy = new SubredditProxy();
    var dotnet = proxy.GetSubredditAsync("dotnet").Result;

    var child1 = dotnet.data.children[0];

    // this is being returned as dynamic
    var obj = RedditDynamicObjectWrapperFactory.GetWrapper<LinkWrapper>(child1.kind, child1);

    Assert.IsNotNull(obj);
}

```