I am working on a javascript functionality of passing complex data from window.open() to MVC Controller action method parameter.
I was able to achieve it by constructing a query string and retrieving them from [FromQuery] in controller.

But my problem is I want to pass the data as a model object. Is it possible in window.open()

Below is my javascript code

```
$("#btnExportToExcelForBatch").on('click',
                function() {
                    var currentBatchId = 0;
                    var empName = $("#empName").val();
                    var empId = $("#empId").val();
                    var deptId = $("#deptId").val();
                    window.open("/Download/ExportToExcel?EmpName="
                        + empName + "&EmpId=" + empId + "&DeptId="
                        + deptId);                 
                });

```

As you can see, I can pass the data in the URL, but it seems to be exposed. So, is there way that I can pass in 

`var url = @Url.Action("ExportToExcel", "Download");`

But I am unable to pass them. 

Is there a possible way to achieve by sending as model object to MVC controller.

```
public async Task<IActionResult> ExportToExcel(EmployeeModel employeeModel)
{
     // SomeCode
     return File();
}

```

Could anyone help me with this problem