From 6a8af83f6966efc0dd3c0125c1ed117b423140fd Mon Sep 17 00:00:00 2001 From: Greg Olmstead Date: Fri, 27 Oct 2017 16:28:26 -0400 Subject: [PATCH 1/2] Change Find to return null instead of throw an exception --- Sources/Linq2DynamoDb.DataContext/DataTable.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Sources/Linq2DynamoDb.DataContext/DataTable.cs b/Sources/Linq2DynamoDb.DataContext/DataTable.cs index 4eb748f..c63b73d 100644 --- a/Sources/Linq2DynamoDb.DataContext/DataTable.cs +++ b/Sources/Linq2DynamoDb.DataContext/DataTable.cs @@ -40,7 +40,7 @@ public void RemoveOnSubmit(TEntity entity) public TEntity Find(params object[] keyValues) { var enumerableResult = (IEnumerable)this._tableWrapper.Find(keyValues); - return enumerableResult.Single(); + return enumerableResult.FirstOrDefault(); } /// @@ -50,7 +50,7 @@ public TEntity Find(params object[] keyValues) public async Task FindAsync(params object[] keyValues) { var enumerableResult = (IEnumerable) await this._tableWrapper.FindAsync(keyValues); - return enumerableResult.Single(); + return enumerableResult.FirstOrDefault(); } /// From c511b9971cd1a95dcdb03e33d63cca0181f5ba5b Mon Sep 17 00:00:00 2001 From: Greg Olmstead Date: Fri, 27 Oct 2017 16:28:26 -0400 Subject: [PATCH 2/2] Change Find to return null instead of throw an exception Should return null when item not found instead of throwing --- Sources/Linq2DynamoDb.DataContext/DataTable.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Sources/Linq2DynamoDb.DataContext/DataTable.cs b/Sources/Linq2DynamoDb.DataContext/DataTable.cs index 4eb748f..c63b73d 100644 --- a/Sources/Linq2DynamoDb.DataContext/DataTable.cs +++ b/Sources/Linq2DynamoDb.DataContext/DataTable.cs @@ -40,7 +40,7 @@ public void RemoveOnSubmit(TEntity entity) public TEntity Find(params object[] keyValues) { var enumerableResult = (IEnumerable)this._tableWrapper.Find(keyValues); - return enumerableResult.Single(); + return enumerableResult.FirstOrDefault(); } /// @@ -50,7 +50,7 @@ public TEntity Find(params object[] keyValues) public async Task FindAsync(params object[] keyValues) { var enumerableResult = (IEnumerable) await this._tableWrapper.FindAsync(keyValues); - return enumerableResult.Single(); + return enumerableResult.FirstOrDefault(); } ///