Skip to content

Commit 7203b26

Browse files
committed
1 parent 169ca49 commit 7203b26

2 files changed

Lines changed: 16 additions & 3 deletions

File tree

Simple.Data.BehaviourTest/Query/QueryTest.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,5 +240,11 @@ public void SpecifyOrderByDescendingWithoutReferenceThrowsException()
240240
{
241241
Assert.Throws<ArgumentException>(() => _db.Users.All().OrderByDescending(1));
242242
}
243+
244+
[Test]
245+
public void CallingFirstOnTableShouldThrowInvalidOperationException()
246+
{
247+
Assert.Throws<InvalidOperationException>(() => _db.Users.First());
248+
}
243249
}
244250
}

Simple.Data/ObjectReference.cs

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -137,10 +137,17 @@ public override bool TryInvokeMember(InvokeMemberBinder binder, object[] args, o
137137

138138
// Or it could be a schema reference...
139139
var schema = new DynamicSchema(_name, _dataStrategy);
140-
if (schema.TryInvokeMember(binder, args, out result))
140+
try
141+
{
142+
if (schema.TryInvokeMember(binder, args, out result))
143+
{
144+
_dataStrategy.SetMemberAsSchema(this);
145+
return true;
146+
}
147+
}
148+
catch (KeyNotFoundException)
141149
{
142-
_dataStrategy.SetMemberAsSchema(this);
143-
return true;
150+
throw new InvalidOperationException(string.Format("Method {0} not recognised", binder.Name));
144151
}
145152
}
146153

0 commit comments

Comments
 (0)