0
Db4o db에서 임의의 오브젝트를 선택하는 방법을 아는 사람이 있습니까?Db4o 임의의 오브젝트 선택
Db4o db에서 임의의 오브젝트를 선택하는 방법을 아는 사람이 있습니까?Db4o 임의의 오브젝트 선택
나는 이것이 가장 좋은 방법이라고 생각합니다. 쿼리를 실행하고 결과를 IList로 가져옵니다. 반환 된리스트는 (적어도 임베디드 모드에서) 객체를 느리게로드하므로 인덱스로 무작위 객체를 선택할 수 있습니다. 이 같은
뭔가 :
public static ICollection<T> RandomObjects<T>(IList<T> objectSet, int amount)
{
var resultSet = new HashSet<T>();
var random = new Random();
amount = Math.Min(objectSet.Count, amount);
while (resultSet.Count<amount)
{
resultSet.Add(objectSet[random.Next(amount)]);
}
return resultSet;
}
그리고 그것을 사용 :
IList<Person> potentialObjects = container.query(Person.class);
ICollection<Person> randomObject = RandomObjects(potentialObjects,10);
또 다른 가능성은 무작위로 일치하는 LINQ-쿼리를 작성하는 것입니다. 그러나 이러한 쿼리는 최적화 할 수 없으므로 잘못 수행 될 수 있습니다.
var random = from Person p in dbc
where new Random().Next(2) == 1
select p;
편집 : 어떤 언어로 C#
로 변경? – skaffman
그것은 C# –
에서 C# – Gamlor