aboutsummaryrefslogtreecommitdiff
path: root/src/dtf/WixToolset.Dtf.WindowsInstaller.Linq/Attributes.cs
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2021-05-11 07:36:37 -0700
committerRob Mensching <rob@firegiant.com>2021-05-11 07:36:37 -0700
commit3f583916719eeef598d10a5d4e14ef14f008243b (patch)
tree3d528e0ddb5c0550954217c97059d2f19cd6152a /src/dtf/WixToolset.Dtf.WindowsInstaller.Linq/Attributes.cs
parent2e5ab696b8b4666d551b2a0532b95fb7fe6dbe03 (diff)
downloadwix-3f583916719eeef598d10a5d4e14ef14f008243b.tar.gz
wix-3f583916719eeef598d10a5d4e14ef14f008243b.tar.bz2
wix-3f583916719eeef598d10a5d4e14ef14f008243b.zip
Merge Dtf
Diffstat (limited to 'src/dtf/WixToolset.Dtf.WindowsInstaller.Linq/Attributes.cs')
-rw-r--r--src/dtf/WixToolset.Dtf.WindowsInstaller.Linq/Attributes.cs60
1 files changed, 60 insertions, 0 deletions
diff --git a/src/dtf/WixToolset.Dtf.WindowsInstaller.Linq/Attributes.cs b/src/dtf/WixToolset.Dtf.WindowsInstaller.Linq/Attributes.cs
new file mode 100644
index 00000000..60008bc8
--- /dev/null
+++ b/src/dtf/WixToolset.Dtf.WindowsInstaller.Linq/Attributes.cs
@@ -0,0 +1,60 @@
1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
3namespace WixToolset.Dtf.WindowsInstaller.Linq
4{
5 using System;
6
7 /// <summary>
8 /// Apply to a subclass of QRecord to indicate the name of
9 /// the table the record type is to be used with.
10 /// </summary>
11 /// <remarks>
12 /// If this attribute is not used on a record type, the default
13 /// table name will be derived from the record type name. (An
14 /// optional underscore suffix is stripped.)
15 /// </remarks>
16 [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
17 public class DatabaseTableAttribute : Attribute
18 {
19 /// <summary>
20 /// Creates a new DatabaseTableAttribute for the specified table.
21 /// </summary>
22 /// <param name="table">name of the table associated with the record type</param>
23 public DatabaseTableAttribute(string table)
24 {
25 this.Table = table;
26 }
27
28 /// <summary>
29 /// Gets or sets the table associated with the record type.
30 /// </summary>
31 public string Table { get; set; }
32 }
33
34 /// <summary>
35 /// Apply to a property on a subclass of QRecord to indicate
36 /// the name of the column the property is to be associated with.
37 /// </summary>
38 /// <remarks>
39 /// If this attribute is not used on a property, the default
40 /// column name will be the same as the property name.
41 /// </remarks>
42 [AttributeUsage(AttributeTargets.Property, AllowMultiple = false)]
43 public class DatabaseColumnAttribute : Attribute
44 {
45 /// <summary>
46 /// Creates a new DatabaseColumnAttribute which maps a
47 /// record property to a column.
48 /// </summary>
49 /// <param name="column">name of the column associated with the property</param>
50 public DatabaseColumnAttribute(string column)
51 {
52 this.Column = column;
53 }
54
55 /// <summary>
56 /// Gets or sets the column associated with the record property.
57 /// </summary>
58 public string Column { get; set; }
59 }
60}