RDLC 报告中的阿拉伯语 asp.net mvc

Arabic language in RDLC Reports asp.net mvc

我正在尝试导出 MS Word 文件,但是当我导出 word 文件时遇到了一个小问题,因为我存储在数据库中的数据是用阿拉伯字母写的,所以它是 RTL,然后是字母显示为分隔的字母,这是导出文件的一部分:

控制器操作:

 public ActionResult Report(string id)
    {



        LocalReport lr = new LocalReport();
        string path = Path.Combine(Server.MapPath("~/Report"), "Report1.rdlc");//Report1.rdlc is a tamplate exist in Report Folder.
        if (System.IO.File.Exists(path))
        {
            lr.ReportPath = path;
        }
        else
        {
            return View("Index");
        }
        List<Note> cm = new List<Note>();

            cm = db.Notes.ToList();

        ReportDataSource rd = new ReportDataSource("DataSet1", cm);
        lr.DataSources.Add(rd);
        string reportType = id;
        string mimeType;
        string encoding;
        string fileNameExtension;



        string deviceInfo =

        "<DeviceInfo>" +
        "  <OutputFormat>" + id + "</OutputFormat>" +
        "  <PageWidth>8.5in</PageWidth>" +
        "  <PageHeight>11in</PageHeight>" +
        "  <MarginTop>0.5in</MarginTop>" +
        "  <MarginLeft>1in</MarginLeft>" +
        "  <MarginRight>1in</MarginRight>" +
        "  <MarginBottom>0.5in</MarginBottom>" +
        "</DeviceInfo>";

        Warning[] warnings;
        string[] streams;
        byte[] renderedBytes;

        renderedBytes = lr.Render(
            reportType,
            deviceInfo,
            out mimeType,
            out encoding,
            out fileNameExtension,
            out streams,
            out warnings);


        return File(renderedBytes, mimeType);
    }

当我以 PDF、xlsx 和 PNG 扩展名导出文件时,它们可以正常工作。 有人告诉我问题可能与 UTF-8 有关,这可能吗?

有什么建议吗?

终于找到解决方法了

转到报告的设计页面:

  1. Select(列、行、标签或您想要的)。
  2. 转到属性。
  3. 转到本地化。
  4. 设置方向 RTL。
  5. 设置语言ar-sa (您可以选择任何以 ar 开头的语言,例如 ar-eg、ar-kw 或任何您喜欢的语言)。