【问题标题】:Logging Persian messages with NLog使用 NLog 记录波斯语消息
【发布时间】:2019-10-05 07:18:06
【问题描述】:

在我的 ASP.NET MVC 项目中,我在 Web.config 中有以下配置:

 <configSections>
    <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog" />
  </configSections>
  <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <targets>
      <target name="default" xsi:type="File" fileName="logs/app-log.txt" layout="
--------------------- ${level} (${longdate}) ----------------------$
IP: ${aspnet-request-ip}
Call Site: ${callsite}
${level} message: ${message}"/> archiveFileName="logs/archives/app-log.{#}.txt" archiveEvery="Day" archiveNumbering="Rolling" maxArchiveFiles="7" />
    </targets>
    <rules>
      <logger name="*" writeTo="default" />
    </rules>
  </nlog>

如果我的日志消息是波斯语文本,那么在日志文件中我的问号为?????,而不是波斯语文本。

我该如何解决这个问题?任何帮助将不胜感激!

【问题讨论】:

  • 尝试在目标元素中指定 encoding="utf-8" 或 encoding="utf-16" 属性
  • 我在目标元素中添加了 encoding="utf-8" 不幸的是我有文本 ==> 错误消息:Ù†Ù...اینده ای ب ا این اطلاعات ثبت شده

标签: c# asp.net-mvc nlog


【解决方案1】:

我在目标元素中添加了encoding="UTF8" 属性

【讨论】:

    【解决方案2】:

    正如@ramesh 指出的那样,使用Encoding="utf-16" 并尝试使用writeBom="true"

    此文件目标的 nlog 文档是 https://github.com/NLog/NLog/wiki/File-target,它可能会给您更多帮助。

    【讨论】:

    • 不,对不起朋友。我做了所有这些,但它仍然给了我 ==> 错误消息:Ù†Ù...اینده ای با این اطلاعات ثبت شده
    • 您能否在此处发布文本示例或共享包含其中一些文本的文档位置,我会尽力为您解决。
    • 我现在不在,等我回家看看(6-8 小时)
    • logger.Error("مشکلی در بررسی درخواست شما رخ داده است")
    • 谢谢乔纳森,我通过将 encoding="utf-8" 更改为 encoding="UTF8" 解决了这个问题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多