> For the complete documentation index, see [llms.txt](https://web-api.iceteagroup.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://web-api.iceteagroup.com/ppj.web.49/interfaces/ppj.runtime.isaltype.md).

# ISalType

Namespace: **PPJ.Runtime**

Assembly: **PPJ.Web.49** (4.9.0.0)

Common base interface for Sal types.

{% tabs %}
{% tab title="C#" %}

```csharp
public interface ISalType
```

{% endtab %}

{% tab title="VB.NET" %}

```visual-basic
Public Interface ISalType
```

{% endtab %}
{% endtabs %}

## Properties

### ![](/files/qoQXnPICsjBVNBSqpOj9)DbType

[DbType](https://docs.microsoft.com/en-us/dotnet/api/system.data.dbtype): Returns the corresponding DbType.

### ![](/files/qoQXnPICsjBVNBSqpOj9)IsNull

[Boolean](https://docs.microsoft.com/en-us/dotnet/api/system.boolean): Tests if the value is null.

### ![](/files/qoQXnPICsjBVNBSqpOj9)Value

[Object](https://docs.microsoft.com/en-us/dotnet/api/system.object): Returns the inner native value.

## Implemented By

| Name                                                                                                   | Description                                                                                                                                                                                         |
| ------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [SalArray\<T>](/ppj.web.49/interfaces/ppj.runtime.isaltype.md)                                         | Dynamic array generic class. This class replicates SAL dynamic arrays. It can be used without being declared as an inner class by using the new generics syntax.                                    |
| [SalBinary](https://docs.wisej.com/extensions/ppj.web.49/types/ppj.runtime.salbinary.md)               | SAL Binary type (TD6).                                                                                                                                                                              |
| [SalBoolean](https://docs.wisej.com/extensions/ppj.web.49/types/ppj.runtime.salboolean.md)             | SAL Boolean basic type. This is exactly the same as SalNumber. It is automatically casted to/from SalNumber.                                                                                        |
| [SalDateTime](https://docs.wisej.com/extensions/ppj.web.49/types/ppj.runtime.saldatetime.md)           | SAL Date/Time basic type. It wraps .NET native DateTime type. SalDateTime objects are automatically cast to and from DateTime.                                                                      |
| [SalNumber](https://docs.wisej.com/extensions/ppj.web.49/types/ppj.runtime.salnumber.md)               | SAL Number basic type. It wraps .NET native Decimal type. SalNumber objects are automatically cast to and from SalBoolean, Decimal, and int.                                                        |
| [SalString](https://docs.wisej.com/extensions/ppj.web.49/types/ppj.runtime.salstring.md)               | SAL String basic type. It wraps .NET String class. SalString objects are automatically cast to and from .NET String type.                                                                           |
| [SalStringContext](https://docs.wisej.com/extensions/ppj.web.49/types/ppj.runtime.salstringcontext.md) | Special SalString extension to support SalContextCurrent().                                                                                                                                         |
| [SalWindowHandle](https://docs.wisej.com/extensions/ppj.web.49/types/ppj.runtime.salwindowhandle.md)   | SAL WindowHandle basic type. This class holds either a raw handle (a handle to SalSqlHandle, SalSqlSessionHandle, SalFileHandle, or a native control handle) or a weak reference to a .NET control. |
