Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
DbConnectionStringBuilderDescriptor.cs
Go to the documentation of this file.
2
3namespace System.Data.Common;
4
6{
7 internal bool RefreshOnChange { get; }
8
9 public override Type ComponentType { get; }
10
11 public override bool IsReadOnly { get; }
12
13 public override Type PropertyType { get; }
14
15 internal DbConnectionStringBuilderDescriptor(string propertyName, Type componentType, Type propertyType, bool isReadOnly, Attribute[] attributes)
16 : base(propertyName, attributes)
17 {
18 ComponentType = componentType;
19 PropertyType = propertyType;
20 IsReadOnly = isReadOnly;
21 }
22
23 public override bool CanResetValue(object component)
24 {
25 if (component is DbConnectionStringBuilder dbConnectionStringBuilder)
26 {
27 return dbConnectionStringBuilder.ShouldSerialize(DisplayName);
28 }
29 return false;
30 }
31
32 public override object GetValue(object component)
33 {
34 if (component is DbConnectionStringBuilder dbConnectionStringBuilder && dbConnectionStringBuilder.TryGetValue(DisplayName, out object value))
35 {
36 return value;
37 }
38 return null;
39 }
40
41 public override void ResetValue(object component)
42 {
43 if (component is DbConnectionStringBuilder dbConnectionStringBuilder)
44 {
45 dbConnectionStringBuilder.Remove(DisplayName);
47 {
48 dbConnectionStringBuilder.ClearPropertyDescriptors();
49 }
50 }
51 }
52
53 public override void SetValue(object component, object value)
54 {
55 if (component is DbConnectionStringBuilder dbConnectionStringBuilder)
56 {
57 if (typeof(string) == PropertyType && string.Empty.Equals(value))
58 {
59 value = null;
60 }
61 dbConnectionStringBuilder[DisplayName] = value;
63 {
64 dbConnectionStringBuilder.ClearPropertyDescriptors();
65 }
66 }
67 }
68
69 public override bool ShouldSerializeValue(object component)
70 {
71 if (component is DbConnectionStringBuilder dbConnectionStringBuilder)
72 {
73 return dbConnectionStringBuilder.ShouldSerialize(DisplayName);
74 }
75 return false;
76 }
77}
DbConnectionStringBuilderDescriptor(string propertyName, Type componentType, Type propertyType, bool isReadOnly, Attribute[] attributes)
virtual bool TryGetValue(string keyword, [NotNullWhen(true)] out object? value)