    

 ## On this page

  

 

 # Class DesignVariableAPI

 Last update: 16.07.2025 

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

This class implements APIs for  class.

```csharp
public static class DesignVariableAPI

```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← [DesignVariableAPI](VM.API.Pre.DesignVariableAPI.md)

#### 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_)

## Methods

### CreateDesignVariable(IDocument, string, ExpressionValueVariable, SymmetricType)

Create .

```csharp
[NotNullOrEmpty(new string[] { "value" })]
public static Obj CreateDesignVariable(this IDocument document, string name, ExpressionValueVariable value, SymmetricType symmetricType = SymmetricType.None)

```

#### Parameters

`document` IDocument

The document to create the design variable.

`name` [string](https://learn.microsoft.com/dotnet/api/system.string)

The name of the design variable.

`value` ExpressionValueVariable

The value to create the design variable.

`symmetricType` SymmetricType

The symmetric type of the new

#### Returns

[Obj](VM.API.Pre.Obj.md)

The new  object that is created by this API.

#### Exceptions

[ArgumentNullException](https://learn.microsoft.com/dotnet/api/system.argumentnullexception)

Will be thrown if 'value' argument is null.