Commit 4012fbfe authored by johandanforth's avatar johandanforth

Fix for issue #361

parent 7f22bff5
......@@ -402,6 +402,8 @@ public void GetAll()
users.Count.IsEqualTo(numberOfEntities);
var iusers = connection.GetAll<IUser>().ToList();
iusers.Count.IsEqualTo(numberOfEntities);
for (var i = 0; i < numberOfEntities; i++)
iusers[i].Age.IsEqualTo(i);
}
}
......
......@@ -468,7 +468,7 @@ private static ISqlAdapter GetFormatter(IDbConnection connection)
static class ProxyGenerator
{
private static readonly Dictionary<Type, object> TypeCache = new Dictionary<Type, object>();
private static readonly Dictionary<Type, Type> TypeCache = new Dictionary<Type, Type>();
private static AssemblyBuilder GetAsmBuilder(string name)
{
......@@ -482,10 +482,10 @@ public static T GetInterfaceProxy<T>()
{
Type typeOfT = typeof(T);
object k;
Type k;
if (TypeCache.TryGetValue(typeOfT, out k))
{
return (T)k;
return (T)Activator.CreateInstance(k);
}
var assemblyBuilder = GetAsmBuilder(typeOfT.Name);
......@@ -509,12 +509,8 @@ public static T GetInterfaceProxy<T>()
var generatedType = typeBuilder.CreateType();
//assemblyBuilder.Save(name + ".dll"); //NOTE: to save, uncomment
var generatedObject = Activator.CreateInstance(generatedType);
TypeCache.Add(typeOfT, generatedObject);
return (T)generatedObject;
TypeCache.Add(typeOfT, generatedType);
return (T)Activator.CreateInstance(generatedType);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment