2012-03-06 1 views
0

를 포함하지 :오류 메시지는 다음과 같이 순서는 시험 내가 <code>Connection.db.Single<Test>("select * from Test WHERE ID= " + id)</code>를 사용하고 어떤 요소

Assert.IsNull(Connection.db.Single<Test>("select * from Test WHERE ID= " + id)); 

은 내가 전달하고 ID 값에 대한 행이 없기 때문에 결과 집합이 널해야한다고 알고있다. 그러나 다음과 같은 오류가 해고 :

시퀀스에 요소가없는 다음과 같이 예외 사항은 다음과 같습니다에 : System.InvalidOperationException이 메시지 = 시퀀스에 요소 출처 = System.Core 스택 트레이스를 포함하지 않는 사용자 코드에 의해 처리되지 않은했다 C : \ Dev \ Models \ PetaPoco.cs에서 PetaPoco.Database.Single [T] (String sql, Object [] args)의 System.Linq.Enumerable.Single [TSource] (IEnumerable`1 source) : 줄 1120

  1. null을 테스트하기 위해 단일을 사용할 수 없습니까?
  2. Asset.IsNUll을 테스트하는 더 좋은 방법이 있습니까?

답변

0

사용 :

Assert.IsNull(Connection.db.SingleOrDefault<Test>("select * from Test WHERE ID= " + id)); 
0

사용하는() 또는 FirstOrDefault, 같이 :

if (context.Product.Any(x => x.ProductId == 1)) ... 
+0

내가 .ANY() 만 사용하고 여전히 오류가 (AttendantTrackingSD이 BOOL 인) : chatUserRepository.Table.Where (c => c.AttendantTrackingSD)를 반환합니다 .Any(); –

관련 문제