【问题标题】:SQL Decimal IssueSQL 十进制问题
【发布时间】:2023-03-15 09:26:01
【问题描述】:

我有一个格式如下的输入字符串:12.34

当我拨打此行时:

db.AddInParameter(insertMessageDetailCommand, "AttachmentSize", System.Data.SqlDbType.Decimal  , Convert.ToDecimal(this.messageEnvelope.EnvelopeInfo.AttachmentSize));

我得到一个格式不正确的输入字符串。我正在部署的服务器具有带“,”分隔符的区域设置作为小数点。但其他生产服务器可能有“。”分隔符。

我怎样才能将这个字符串值 : 12.34 传递给这个函数,这样它就不会中断,并且它的通用性足以承受你扔给它的任何区域设置?

【问题讨论】:

    标签: c# sql decimal regional


    【解决方案1】:

    在解析字符串时指定一种文化以消除服务器设置的差异。您可以使用InvariantCulture,它使用句点作为小数分隔符:

    Convert.ToDecimal(this.messageEnvelope.EnvelopeInfo.AttachmentSize, CultureInfo.InvariantCulture)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-27
      • 2014-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-21
      相关资源
      最近更新 更多