小编Fer*_*lek的帖子

异步加载数据,一键下载CSV数据,落后最新检索到的数据一步

使用react-csv包,我异步加载数据,然后尝试一键从服务器下载检索到的数据。我目前面临的问题是点击比当前状态落后了一步。当组件第一次渲染时,它会下载一个空的 CSV 文件,第二次单击时,它会下载上次获取的数据,而不是当前/最新的获取。这与此处描述的情况相同,但那里提到的解决方案没有在我的例子中工作:这里是正在处理的代码:

  const [newData, setNewData] = useState([]);
  const csvLink = React.createRef();

   const csvExport = (
    <div>
      <Button className="pull-right title-button" onClick={getData}>
        CSV Export
      </Button>
      <CSVLink data={newData} headers={headers} target="_blank" ref={csvLink}></CSVLink>
    </div>
  );

const getData = async () => {
    await getRetailLinkOutcomes(auth, startDate, endDate, 0, 0, filters, sort, sortDirection, false).then((response) => {
      setNewData(response.records);
      csvLink.current.link.click();
    });
  };
Run Code Online (Sandbox Code Playgroud)

javascript export-to-csv reactjs

6
推荐指数
1
解决办法
5410
查看次数

ASP.net Core API:ValidationVisitor 超出了最大配置的验证深度“32”

当我从 docker 容器运行 ASP.Net 核心 Web API 时,它会引发验证错误:

System.InvalidOperationException:验证类型“ClassName”时,ValidationVisitor 超出了配置的最大验证深度“32”。这可能表示非常深或无限递归的对象图。考虑修改“MvcOptions.MaxValidationDepth”或取消对模型类型的验证。

我唯一能找到有关此问题的讨论的地方是在 这里,似乎在最新版本的 ASP.net 核心上提供了修复程序。我将我的 .net 核心版本更新到最新版本,但仍然面临同样的问题。
这是验证导致问题的类的代码:

        [Required]
        [Range(1, long.MaxValue)]
        public long Id { get; set; }
        [Required(AllowEmptyStrings = false)]
        [StringLength(1000)]
        public string Name { get; set; }
        [Required(AllowEmptyStrings = false)]
        [StringLength(200)]
        public string Category { get; set; }
        [Required(AllowEmptyStrings = false)]
        [StringLength(13)]
        public string Division { get; set; }
Run Code Online (Sandbox Code Playgroud)

重要提示:我是唯一面临此问题的人,因为我团队的其他成员正在成功运行该项目,非常感谢任何帮助。

c# asp.net-core

5
推荐指数
2
解决办法
1625
查看次数

标签 统计

asp.net-core ×1

c# ×1

export-to-csv ×1

javascript ×1

reactjs ×1