> For the complete documentation index, see [llms.txt](https://docs.tailent.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tailent.com/actions/tap-actions/custom/c-script.md).

# C# Script

This action allows running custom C# code within the robot's virtualized environment.

## **Properties**

![](/files/-MfdXCx6fipS_auzpINz)

### **Input**

* **Code**: click on the button ![mceclip1.png](/files/-MT1yvn3V248fkl9Z74j) to open the code editor:

![](/files/-MfdXXqeG48ey4gcL6NQ)

Click on **Generate Code Starter** to generate the "Hello world!" code.

![](/files/-MfdXRxyiteRM2km-Lg4)

Validate your code using the "**Validate Code**" button.&#x20;

If your code is correct, a pop-up message will inform you that "**Source code is valid**".

![](/files/-MfdY9bJ5lLZ4yu7Zo-Z)

If your code is NOT correct, another pop-up message will appear, informing the code is not correct and offering suggestions.

In the case below, on line 20, " is expected to close the string *"este numarul total de mesaje*

The error is registered also in the Error List section.

Same situation if the ; is missing on line 19.

![](/files/-MfdY_fvS9gc7oeKRfdJ)

* **Method Name**: default value MainMethod

### **Misc**

* **Display Name**: action display name in your implementation project
* **Wait Before**: number milliseconds robot to wait before executing the action.
* **Wait After:** number milliseconds robot to wait until moving to the next action.
* **Abort on Error**: True/False
* **Retry Times**: Specifies the number of times to retry an action if it doesn't end successfully. Default value 0 (no retry); Use -1 if you want to retry indefinitely.&#x20;

## **Use Case**

### **Potential Use Cases**

* Parse a .csv file for master data synchronization between 2 different systems
* Call information from multiple sources in order to build an automation algorithm

### **Examples of Using C# Code**

**Example**

In this example, the robot will generate two files and a directory in the project folder.

Watch the robot in action:

{% embed url="<https://youtu.be/kA0Hm7T5GGI>" %}

You can see how **C# Script** activity is used in an example that incorporates multiple activities. You can check and download the example from here:

{% file src="/files/RDLwid88Plxwzjl6ooZm" %}
Get Image sample project
{% endfile %}

The article doesn't fully answer your question, or you want to find out more? Ask your question in the comments, on our community forum, or contact our support team or your account manager. Whatever works for you, your question will find its answer soon!


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tailent.com/actions/tap-actions/custom/c-script.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
