C# 将网格数据导出到EXCEL时获取字符串中的数字类型字段

C# 将网格数据导出到EXCEL时获取字符串中的数字类型字段,c#,asp.net,kendo-grid,export-to-excel,C#,Asp.net,Kendo Grid,Export To Excel,我正在将剑道网格导出到EXCEL。下面是我正在使用的ExportToExcel()操作 当我导出时,它运行良好,但“数字字段”在EXCEl中显示为字符串。出于某种原因,我必须在数字中有数据值(如果是数字字段)/字符串(如果是网格中的字符串类型) 有没有办法做到这一点 任何人都请帮我 public JsonResult ExportToExcel(string model, string data, string title) { using (System.IO.

我正在将剑道网格导出到EXCEL。下面是我正在使用的ExportToExcel()操作

当我导出时,它运行良好,但“数字字段”在EXCEl中显示为字符串。出于某种原因,我必须在数字中有数据值(如果是数字字段)/字符串(如果是网格中的字符串类型)

有没有办法做到这一点

任何人都请帮我

    public JsonResult ExportToExcel(string model, string data, string title)
    {
        using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
        {
            /* Create the worksheet. */

            SpreadsheetDocument spreadsheet = Excel.CreateWorkbook(stream);
            Excel.AddBasicStyles(spreadsheet);
            Excel.AddAdditionalStyles(spreadsheet);
            Excel.AddWorksheet(spreadsheet, title);
            Worksheet worksheet = spreadsheet.WorkbookPart.WorksheetParts.First().Worksheet;


            /* Get the information needed for the worksheet */

            var modelObject = JsonConvert.DeserializeObject<dynamic>(model);
            var dataObject = JsonConvert.DeserializeObject<dynamic>(data);


            /* Add the column titles to the worksheet. */

            // For each column...
            for (int mdx = 0; mdx < modelObject.Count; mdx++)
            {
                // If the column has a title, use it.  Otherwise, use the field name.
                Excel.SetColumnHeadingValue(spreadsheet, worksheet, Convert.ToUInt32(mdx + 1),
                    modelObject[mdx].title == null ? modelObject[mdx].field.ToString() : modelObject[mdx].title.ToString(),
                    false, false);

                // Is there are column width defined?
                Excel.SetColumnWidth(worksheet, mdx + 1, modelObject[mdx].width != null
                    ? Convert.ToInt32(modelObject[mdx].width.ToString()) / 4
                    : 25);
            }


            /* Add the data to the worksheet. */

            // For each row of data...
            for (int idx = 0; idx < dataObject.Count; idx++)
            {
                // For each column...
                for (int mdx = 0; mdx < modelObject.Count; mdx++)
                {
                    // Set the field value in the spreadsheet for the current row and column.
                    Excel.SetCellValue(spreadsheet, worksheet, Convert.ToUInt32(mdx + 1), Convert.ToUInt32(idx + 2),
                        dataObject[idx][modelObject[mdx].field.ToString()].ToString(),
                        false, false);
                }
            }


            /* Save the worksheet and store it in Session using the spreadsheet title. */

            worksheet.Save();
            spreadsheet.Close();
            byte[] file = stream.ToArray();
            Session[title] = file;
        }

        return Json(new { success = true }, JsonRequestBehavior.AllowGet);
    }
public JsonResult ExportToExcel(字符串模型、字符串数据、字符串标题)
{
使用(System.IO.MemoryStream stream=new System.IO.MemoryStream())
{
/*创建工作表*/
SpreadsheetDocument电子表格=Excel.CreateWorkbook(流);
Excel.AddBasicStyles(电子表格);
Excel.AddAdditionalStyles(电子表格);
Excel.AddWorksheet(电子表格、标题);
工作表=电子表格.WorkbookPart.WorksheetParts.First().Worksheet;
/*获取工作表所需的信息*/
var modelObject=JsonConvert.DeserializeObject(模型);
var dataObject=JsonConvert.DeserializeObject(数据);
/*将列标题添加到工作表中*/
//对于每一列。。。
for(int-mdx=0;mdx
我正在使用从剑道网格生成Excel导出。

有关详细信息,请参阅中的公共JsonResult导出(KendoGridFilter筛选器,字符串guid)方法