私のアプリケーションをDAL、BL、UIに分けました。エンティティフレームワークを使用しているC#のデータベースへのクエリでメソッドを使用する代わりに
私は、SQLデータベースにアクセスするために、エンティティフレームワークのコードを最初にスローするリポジトリを使用しました。
public class Person{
...
}
public class PersonRepository{
Create(...){...}
Update(...){...}
Delete(...){...}
GetById(...){...}
Query(...){...}
...
今の事は、私は住所
public GetPersonsNear(string Address){
...
}
private bool AddressesAreClose(string address1, string address2)
{
...
}
の近くに残されているすべての人を取得する方法に取り組んでいるBLである事は、LINQ does'nt私のメソッドを使用してみましょうです(リポジトリの「クエリ」方法で渡されたクエリで)
...
PersonRepository personRepository = new PersonRepository();
var person = repository.Query(p => AddressAreClose(adress,p.Adress);
...
そのためには、私がテストをするために、単純なforeachループを使用してのみ関連を保ち、リスト内の表のすべての要素を取得するために必要もの今の
...
PersonRepository personRepository = new PersonRepository();
var persons = personRepository.GetAll;
foreach(person in persons)
{
if(AdressAreClose(adress,person.adress))
...
}
私はそれをテストするための唯一のいくつかの要素を持つデータベースを埋め、私はそれはそれはi「は、すべてのテストで、後に特別に含まれていますはるかに多い数で非常にうまく機能わかりません追加する予定です
これはもっと巧妙な方法ですか?私は何かを開いている