1 // Copyright 2004-2008 Castle Project - http://www.castleproject.org/
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
7 // http://www.apache.org/licenses/LICENSE-2.0
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
20 /// This attribute is used to specify that a property is the versioning property of the class
22 [AttributeUsage(AttributeTargets
.Property
, AllowMultiple
=false), Serializable
]
23 public class VersionAttribute
: WithAccessAttribute
25 private String column
, type
, unsavedValue
;
28 /// Initializes a new instance of the <see cref="VersionAttribute"/> class.
30 public VersionAttribute()
35 /// Initializes a new instance of the <see cref="VersionAttribute"/> class.
37 /// <param name="column">The column.</param>
38 public VersionAttribute(String column
)
44 /// Gets or sets the column name
46 /// <value>The column.</value>
49 get { return column; }
50 set { column = value; }
54 /// Gets or sets the type of the column (should be an integer of some type)
56 /// <value>The type.</value>
64 /// Gets or sets the unsaved value for this column
66 /// <value>The unsaved value.</value>
67 public String UnsavedValue
69 get { return unsavedValue; }
70 set { unsavedValue = value; }