Mercurial > pub > bltoolkit
comparison HowTo/Data/ExecuteDictionary.cs @ 0:f990fcb411a9
Копия текущей версии из github
author | cin |
---|---|
date | Thu, 27 Mar 2014 21:46:09 +0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:f990fcb411a9 |
---|---|
1 using System; | |
2 using System.Collections.Generic; | |
3 | |
4 using NUnit.Framework; | |
5 | |
6 using BLToolkit.Common; | |
7 using BLToolkit.Data; | |
8 using BLToolkit.Mapping; | |
9 | |
10 namespace HowTo.Data | |
11 { | |
12 using DataAccess; | |
13 | |
14 [TestFixture] | |
15 public class ExecuteDictionary | |
16 { | |
17 // The dictionary key is built from an object field/property. | |
18 // | |
19 Dictionary<int, Person> GetPersonDictionary1() | |
20 { | |
21 using (DbManager db = new DbManager()) | |
22 { | |
23 return db | |
24 .SetCommand("SELECT * FROM Person") | |
25 ./*[a]*/ExecuteDictionary/*[/a]*/<int, Person>(/*[a]*/"ID"/*[/a]*/); | |
26 } | |
27 } | |
28 | |
29 [Test] | |
30 public void Test1() | |
31 { | |
32 Dictionary<int, Person> dic = GetPersonDictionary1(); | |
33 | |
34 Assert.AreNotEqual(0, dic.Count); | |
35 } | |
36 | |
37 // The dictionary key is built from a recordset field value ('@' prefix). | |
38 // | |
39 Dictionary<int, Person> GetPersonDictionary2() | |
40 { | |
41 using (DbManager db = new DbManager()) | |
42 { | |
43 return db | |
44 .SetCommand("SELECT * FROM Person") | |
45 ./*[a]*/ExecuteDictionary/*[/a]*/<int, Person>(/*[a]*/"@PersonID"/*[/a]*/); | |
46 } | |
47 } | |
48 | |
49 [Test] | |
50 public void Test2() | |
51 { | |
52 Dictionary<int, Person> dic = GetPersonDictionary2(); | |
53 | |
54 Assert.AreNotEqual(0, dic.Count); | |
55 } | |
56 | |
57 // Complex dictionary key. | |
58 // | |
59 Dictionary</*[a]*/CompoundValue/*[/a]*/, Person> GetPersonDictionary3() | |
60 { | |
61 using (DbManager db = new DbManager()) | |
62 { | |
63 return db | |
64 .SetCommand("SELECT * FROM Person") | |
65 ./*[a]*/ExecuteDictionary/*[/a]*/<Person>(new /*[a]*/MapIndex("FirstName", "LastName")/*[/a]*/); | |
66 } | |
67 } | |
68 | |
69 [Test] | |
70 public void Test3() | |
71 { | |
72 Dictionary</*[a]*/CompoundValue/*[/a]*/, Person> dic = GetPersonDictionary3(); | |
73 | |
74 Assert.AreNotEqual(0, dic.Count); | |
75 } | |
76 } | |
77 } |