How to convert a JavaScript array to C# array?

Converting a JavaScript array to a C# array involves passing the JavaScript array data to your C# application, typically through web forms, AJAX requests, or by converting the array to a string format that C# can parse.

The most common approach is to serialize the JavaScript array to a string (usually comma-separated or JSON format) and then parse it in C# to recreate the array.

Using Comma-Separated String Conversion

First, convert the JavaScript array to a comma-separated string using the join() method −

<script>
   var myArr = ["Welcome", "to", "the", "Web", "World"];
   var arrayString = myArr.join(',');
   // Pass arrayString to C# via form field, AJAX, etc.
</script>

Then in C#, split the string back into an array −

using System;

class Program {
   public static void Main() {
      // Simulating the comma-separated string received from JavaScript
      string jsArrayString = "Welcome,to,the,Web,World";
      
      // Convert to C# string array
      string[] csharpArray = jsArrayString.Split(',');
      
      // Display the converted array
      Console.WriteLine("Converted C# Array:");
      for (int i = 0; i < csharpArray.Length; i++) {
         Console.WriteLine($"[{i}] = {csharpArray[i]}");
      }
   }
}

The output of the above code is −

Converted C# Array:
[0] = Welcome
[1] = to
[2] = the
[3] = Web
[4] = World

Using JSON Serialization

For more complex arrays or when dealing with objects, JSON serialization provides a robust solution −

<script>
   var myArr = ["Apple", "Banana", "Orange"];
   var jsonString = JSON.stringify(myArr);
   // Pass jsonString to C#
</script>
using System;
using System.Text.Json;

class Program {
   public static void Main() {
      // JSON string received from JavaScript
      string jsonString = "["Apple", "Banana", "Orange"]";
      
      // Deserialize JSON to C# string array
      string[] fruits = JsonSerializer.Deserialize<string[]>(jsonString);
      
      Console.WriteLine("JSON Converted Array:");
      foreach (string fruit in fruits) {
         Console.WriteLine(fruit);
      }
   }
}

The output of the above code is −

JSON Converted Array:
Apple
Banana
Orange

Converting Numeric Arrays

When converting JavaScript numeric arrays, parse the string values to appropriate numeric types −

using System;
using System.Linq;

class Program {
   public static void Main() {
      // Comma-separated numeric string from JavaScript
      string jsNumbers = "10,20,30,40,50";
      
      // Convert to integer array
      int[] numbers = jsNumbers.Split(',').Select(int.Parse).ToArray();
      
      Console.WriteLine("Numeric Array:");
      foreach (int num in numbers) {
         Console.WriteLine(num);
      }
      
      Console.WriteLine($"Sum: {numbers.Sum()}");
   }
}

The output of the above code is −

Numeric Array:
10
20
30
40
50
Sum: 150

Data Transfer Methods

Method Use Case Advantages
Hidden Form Fields Simple web forms Easy to implement, no additional libraries
AJAX POST Dynamic web applications Asynchronous, better user experience
JSON Serialization Complex objects and arrays Handles nested data, type-safe
Query Parameters Small arrays, GET requests Simple URL-based transfer

Conclusion

Converting JavaScript arrays to C# arrays requires serializing the JavaScript data to a string format and then parsing it in C#. Use comma-separated strings for simple arrays or JSON serialization for complex data structures. The specific method depends on your web application architecture and data complexity.

Updated on: 2026-03-17T07:04:35+05:30

2K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements