Applied patch from Jan Limpens 'ReflectionBasedDictionaryAdapter needs to check if...
[castle.git] / ActiveRecord / Castle.ActiveRecord.Tests / Model / Employee.cs
blobfd4119cbc0f42a79c68189f6d48987eb286e73dd
1 // Copyright 2004-2008 Castle Project - http://www.castleproject.org/
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
15 namespace Castle.ActiveRecord.Tests.Model
17 using System;
19 [ActiveRecord("Employee")]
20 public class Employee : ActiveRecordBase
22 private int id;
23 private string firstName;
24 private string lastName;
25 private Award award;
27 [PrimaryKey(PrimaryKeyType.Native, "EmployeeID")]
28 public int ID
30 get { return id; }
31 set { id = value; }
34 [Property]
35 public string FirstName
37 get { return firstName; }
38 set { firstName = value; }
41 [Property]
42 public string LastName
44 get { return lastName; }
45 set { lastName = value; }
48 [OneToOne]
49 public Award Award
51 get { return award; }
52 set { award = value; }
55 public static Employee Find(int id)
57 return ((Employee) (ActiveRecordBase.FindByPrimaryKey(typeof(Employee), id)));
60 public static Employee[] FindAll()
62 return ((Employee[]) (ActiveRecordBase.FindAll(typeof(Employee))));
65 public static void DeleteAll()
67 ActiveRecordBase.DeleteAll(typeof(Employee));
71 [ActiveRecord("Award")]
72 public class Award : ActiveRecordBase
74 private Employee employee;
75 private string description;
76 private int id;
78 public Award()
82 public Award(Employee employee)
84 this.employee = employee;
87 [OneToOne(Constrained=true)]
88 public Employee Employee
90 get { return employee; }
91 set { employee = value; }
94 [PrimaryKey(PrimaryKeyType.Foreign, "EmployeeID")]
95 public int ID
97 get { return id; }
98 set { id = value; }
101 [Property]
102 public string Description
104 get { return description; }
105 set { description = value; }
108 public static Award[] FindAll()
110 return ((Award[]) (ActiveRecordBase.FindAll(typeof(Award))));
113 public static void DeleteAll()
115 ActiveRecordBase.DeleteAll(typeof(Award));