Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
DecimalAttribute.cs
1using System.Globalization;
2using System.Xml;
3using Waher.Script;
4
6{
10 public class DecimalAttribute : Attribute<decimal>
11 {
17 public DecimalAttribute(string AttributeName, decimal Value)
18 : base(AttributeName, Value)
19 {
20 }
21
27 public DecimalAttribute(XmlElement E, string AttributeName)
28 : base(E, AttributeName, true)
29 {
30 }
31
37 public DecimalAttribute(string AttributeName, Expression Expression)
38 : base(AttributeName, Expression)
39 {
40 }
41
48 public override bool TryConvert(object Result, out decimal Value)
49 {
50 if (Result is decimal d)
51 {
52 Value = (decimal)d;
53 return true;
54 }
55 else
56 return base.TryConvert(Result, out Value);
57 }
58
65 public override bool TryParse(string StringValue, out decimal Value)
66 {
67 return decimal.TryParse(StringValue, NumberStyles.Float, CultureInfo.InvariantCulture, out Value);
68 }
69
75 public override string ToString(decimal Value)
76 {
77 return CommonTypes.Encode(Value);
78 }
79 }
80}
Helps with parsing of commong data types.
Definition: CommonTypes.cs:15
static string Encode(bool x)
Encodes a Boolean for use in XML and other formats.
Definition: CommonTypes.cs:596
Manages an attribute value or expression.
Definition: Attribute.cs:13
Decimaling point (Decimal) attribute
override bool TryParse(string StringValue, out decimal Value)
Tries to parse a string value
DecimalAttribute(string AttributeName, decimal Value)
Decimaling point (Decimal) attribute
override bool TryConvert(object Result, out decimal Value)
Tries to convert script result to a value of type decimal.
DecimalAttribute(XmlElement E, string AttributeName)
Decimaling point (Decimal) attribute
override string ToString(decimal Value)
Converts a value to a string.
DecimalAttribute(string AttributeName, Expression Expression)
Decimaling point (Decimal) attribute
Class managing a script expression.
Definition: Expression.cs:41