【问题标题】:Stop formData string from being converted to a date string representation停止将 formData 字符串转换为日期字符串表示形式
【发布时间】:2020-07-06 22:20:22
【问题描述】:

这个很难被发现。我们有一个 .NET Core 2.2 应用程序,其中有一个包含许多字段的表单和一个供用户附加文件的字段。

问题:一个特定字段 CaqhNumber 的最小和最大长度 = 8。

当用户键入一个值(例如20200706)时,发送到服务器的值是该值的日期字符串表示。所以在服务器端我们得到:

07/06/2020

基本上它认为这个特定字段是ISO date

如何阻止这种情况发生?我们只想按照在 UI 端输入的方式在服务器端获取字符串。这不是约会。两边都是纯字符串。

有些事情告诉我这与 .NET Core 配置有关。

【问题讨论】:

    标签: string date .net-core type-conversion isodate


    【解决方案1】:

    猜猜看……窗帘后面有一段代码弄乱了值:

    const isValidDate = moment(
            value,
            moment.ISO_8601,
            true
        ).isValid();
    
        if (isValidDate) {
            formData.append(
                key,
                moment(value).format('MM/DD/YYYY')
            );
    

    修复:

    if (value instanceof Date) {
        formData.append(key, moment(value).format('MM/DD/YYYY'));
    

    【讨论】:

      猜你喜欢
      • 2011-05-26
      • 1970-01-01
      • 1970-01-01
      • 2016-06-30
      • 1970-01-01
      • 2015-04-27
      • 2021-07-27
      • 1970-01-01
      相关资源
      最近更新 更多