    

 ## On this page

  

 

 # Struct ExpressionValue&lt;T\\&gt;

 Last update: 09.03.2026 

<a id="VM_Models_Pre_ExpressionValue_1"></a>

Namespace: [VM.Models.Pre](VM.Models.Pre.md)  
Assembly: VM.Models.Pre.dll

```csharp
public struct ExpressionValue<T> : IExpressionValue, IExpressionValue<T>, IExpression

```

#### Type Parameters

`T`

#### Implements

[IExpressionValue](VM.Models.Pre.IExpressionValue.md), [IExpressionValue&lt;T&gt;](VM.Models.Pre.IExpressionValue-1.md), IExpression

#### Extension Methods

[LinkPropertyItemCache.GetLinkProperties(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkProperties_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkPropertiesAndValues_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkedObjects&lt;T&gt;(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkedObjects__1_System_Object_VM_Models_Pre_LinkPropertyType_)

## Constructors

### <a id="VM_Models_Pre_ExpressionValue_1__ctor__0_System_String_"></a> ExpressionValue(T, string)

```csharp
public ExpressionValue(T value, string expression)

```

#### Parameters

`value` T

`expression` string

## Properties

### <a id="VM_Models_Pre_ExpressionValue_1_Expression"></a> Expression

```csharp
public string Expression { get; set; }

```

#### Property Value

string

### <a id="VM_Models_Pre_ExpressionValue_1_IsSimpleValue"></a> IsSimpleValue

```csharp
public bool IsSimpleValue { get; }

```

#### Property Value

bool

### <a id="VM_Models_Pre_ExpressionValue_1_Parser"></a> Parser

```csharp
public static IExpressionParser<T> Parser { get; }

```

#### Property Value

[IExpressionParser](VM.Models.Pre.IExpressionParser-1.md)&lt;T&gt;

### <a id="VM_Models_Pre_ExpressionValue_1_Value"></a> Value

```csharp
public T Value { get; set; }

```

#### Property Value

T

## Methods

### <a id="VM_Models_Pre_ExpressionValue_1_Equals_VM_Models_Pre_ExpressionValue__0__"></a> Equals(ExpressionValue&lt;T&gt;)

```csharp
public bool Equals(ExpressionValue<T> other)

```

#### Parameters

`other` [ExpressionValue](VM.Models.Pre.ExpressionValue-1.md)&lt;T&gt;

#### Returns

bool

### <a id="VM_Models_Pre_ExpressionValue_1_Equals_System_Object_"></a> Equals(object)

```csharp
public override bool Equals(object obj)

```

#### Parameters

`obj` object

#### Returns

bool

### <a id="VM_Models_Pre_ExpressionValue_1_GetSchema"></a> GetSchema()

```csharp
public XmlSchema GetSchema()

```

#### Returns

XmlSchema

### <a id="VM_Models_Pre_ExpressionValue_1_GetValue_System_String_"></a> GetValue(string)

```csharp
public static object GetValue(string expression)

```

#### Parameters

`expression` string

#### Returns

object

### <a id="VM_Models_Pre_ExpressionValue_1_ReadXml_System_Xml_XmlReader_"></a> ReadXml(XmlReader)

```csharp
public void ReadXml(XmlReader reader)

```

#### Parameters

`reader` XmlReader

### <a id="VM_Models_Pre_ExpressionValue_1_SetParser_VM_Models_Pre_IExpressionParser__0__"></a> SetParser(IExpressionParser&lt;T&gt;)

```csharp
public static void SetParser(IExpressionParser<T> parser)

```

#### Parameters

`parser` [IExpressionParser](VM.Models.Pre.IExpressionParser-1.md)&lt;T&gt;

### <a id="VM_Models_Pre_ExpressionValue_1_WriteXml_System_Xml_XmlWriter_"></a> WriteXml(XmlWriter)

```csharp
public void WriteXml(XmlWriter writer)

```

#### Parameters

`writer` XmlWriter

## Operators

### <a id="VM_Models_Pre_ExpressionValue_1_op_Equality_VM_Models_Pre_ExpressionValue__0__VM_Models_Pre_ExpressionValue__0__"></a> operator ==(ExpressionValue&lt;T&gt;, ExpressionValue&lt;T&gt;)

```csharp
public static bool operator ==(ExpressionValue<T> expressionValue1, ExpressionValue<T> expressionValue2)

```

#### Parameters

`expressionValue1` [ExpressionValue](VM.Models.Pre.ExpressionValue-1.md)&lt;T&gt;

`expressionValue2` [ExpressionValue](VM.Models.Pre.ExpressionValue-1.md)&lt;T&gt;

#### Returns

bool

### <a id="VM_Models_Pre_ExpressionValue_1_op_Implicit__0__VM_Models_Pre_ExpressionValue__0_"></a> implicit operator ExpressionValue&lt;T&gt;(T)

```csharp
public static implicit operator ExpressionValue<T>(T value)

```

#### Parameters

`value` T

#### Returns

[ExpressionValue](VM.Models.Pre.ExpressionValue-1.md)&lt;T&gt;

### <a id="VM_Models_Pre_ExpressionValue_1_op_Implicit_VM_Models_Pre_ExpressionValue__0____0"></a> implicit operator T(ExpressionValue&lt;T&gt;)

```csharp
public static implicit operator T(ExpressionValue<T> expressionValue)

```

#### Parameters

`expressionValue` [ExpressionValue](VM.Models.Pre.ExpressionValue-1.md)&lt;T&gt;

#### Returns

T

### <a id="VM_Models_Pre_ExpressionValue_1_op_Implicit_System_String__VM_Models_Pre_ExpressionValue__0_"></a> implicit operator ExpressionValue&lt;T&gt;(string)

```csharp
public static implicit operator ExpressionValue<T>(string expression)

```

#### Parameters

`expression` string

#### Returns

[ExpressionValue](VM.Models.Pre.ExpressionValue-1.md)&lt;T&gt;

### <a id="VM_Models_Pre_ExpressionValue_1_op_Implicit_VM_Models_Pre_ExpressionValue__0___System_String"></a> implicit operator string(ExpressionValue&lt;T&gt;)

```csharp
public static implicit operator string(ExpressionValue<T> expressionValue)

```

#### Parameters

`expressionValue` [ExpressionValue](VM.Models.Pre.ExpressionValue-1.md)&lt;T&gt;

#### Returns

string

### <a id="VM_Models_Pre_ExpressionValue_1_op_Inequality_VM_Models_Pre_ExpressionValue__0__VM_Models_Pre_ExpressionValue__0__"></a> operator !=(ExpressionValue&lt;T&gt;, ExpressionValue&lt;T&gt;)

```csharp
public static bool operator !=(ExpressionValue<T> expressionValue1, ExpressionValue<T> expressionValue2)

```

#### Parameters

`expressionValue1` [ExpressionValue](VM.Models.Pre.ExpressionValue-1.md)&lt;T&gt;

`expressionValue2` [ExpressionValue](VM.Models.Pre.ExpressionValue-1.md)&lt;T&gt;

#### Returns

bool