# Zontroy AI Offline Repeating File

### *<mark style="color:blue;">zref</mark>*

<figure><img src="https://2376111118-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fqa0RxPoDArscnrvdRrnX%2Fuploads%2FuiIVcFU6gwI2f9sxmbcy%2F3.png?alt=media&#x26;token=d9de098c-b2cf-4768-9296-132c231222c5" alt=""><figcaption></figcaption></figure>

*Zontroy Repeating File is used to create multiple code files and generate lines of code inside those. It uses .zref extension. Name of zref file is set programatically by entering a name in Zontroy Programming Language.*

<figure><img src="https://zontroy.com/wp-content/uploads/2022/03/zref.png" alt=""><figcaption><p>Multiple entities to multiple code files</p></figcaption></figure>

### *<mark style="color:blue;">File Naming Format</mark>*

```
[file_name].[file_extension].zref
```

### *<mark style="color:blue;">File Naming Example</mark>*

```
[[[zg-entity...zg-name]]].java.zref
```

### *<mark style="color:blue;">Code Example</mark>*

*A simple usage example of zref file in C#.*

<pre class="language-csharp"><code class="lang-csharp">// Izg-singularize(((zg-entity...zg-name)))Service.cs.zref
<strong>using Oprazi.Dto.DTOs;
</strong>using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;

namespace Oprazi.Bll.Services.IServices
{
    public interface Izg-singularize(((zg-entity...zg-name)))Service
    {
        Task&#x3C;zg-singularize(((zg-entity...zg-name)))ToResponseDTO> Getzg-pluralize(((zg-entity...zg-name)))(zg-singularize(((zg-entity...zg-name)))ToFilterDTO filter);
        Task&#x3C;zg-singularize(((zg-entity...zg-name)))DTO> Getzg-singularize(((zg-entity...zg-name)))ById(int Id);
        Task&#x3C;zg-singularize(((zg-entity...zg-name)))DTO> Addzg-singularize(((zg-entity...zg-name)))(zg-singularize(((zg-entity...zg-name)))ToAddDTO zg-lower(((zg-singularize(((zg-entity...zg-name))))))ToAddDTO);
        Task Updatezg-singularize(((zg-entity...zg-name)))(zg-singularize(((zg-entity...zg-name)))DTO zg-lower(((zg-singularize(((zg-entity...zg-name))))))DTO);
        Task Deletezg-singularize(((zg-entity...zg-name)))(int Id);
    }
}
</code></pre>

### <mark style="color:blue;">Output Example</mark>

```csharp
// IBankService.cs
using Oprazi.Dto.DTOs;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;

namespace Oprazi.Bll.Services.IServices
{
    public interface IBankService
    {
        Task<BankToResponseDTO> GetBanks(BankToFilterDTO filter);
        Task<BankDTO> GetBankById(int Id);
        Task<BankDTO> AddBank(BankToAddDTO bankToAddDTO);
        Task UpdateBank(BankDTO bankDTO);
        Task DeleteBank(int Id);
    }
}
```

```csharp
// IBankBranchService.cs
using Oprazi.Dto.DTOs;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;

namespace Oprazi.Bll.Services.IServices
{
    public interface IBankBranchService
    {
        Task<BankBranchToResponseDTO> GetBankBranches(BankBranchToFilterDTO filter);
        Task<BankBranchDTO> GetBankBranchById(int Id);
        Task<BankBranchDTO> AddBankBranch(BankBranchToAddDTO bankbranchToAddDTO);
        Task UpdateBankBranch(BankBranchDTO bankbranchDTO);
        Task DeleteBankBranch(int Id);
    }
}

```

```csharp
// IBankAccountService.cs
using Oprazi.Dto.DTOs;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;

namespace Oprazi.Bll.Services.IServices
{
    public interface IBankAccountService
    {
        Task<BankAccountToResponseDTO> GetBankAccounts(BankAccountToFilterDTO filter);
        Task<BankAccountDTO> GetBankAccountById(int Id);
        Task<BankAccountDTO> AddBankAccount(BankAccountToAddDTO bankaccountToAddDTO);
        Task UpdateBankAccount(BankAccountDTO bankaccountDTO);
        Task DeleteBankAccount(int Id);
    }
}

```

{% hint style="info" %}
*<mark style="color:blue;">**Good to know:**</mark>* *In daily programming, controller, validator, service, repository etc classes are sample classes which for using a repeating code file.*
{% endhint %}
