CodeFluent 实体将运行时设计属性添加为 False

CodeFluent Entities Add Runtime Design Attribute to False

现在站点 blog.codefluententities.com 已关闭,无法找到常见问题的答案。 甚至他们主网站上的常见问题解答和博客也很差,并且没有任何搜索工具。 在“知识中心”,您可以尝试搜索一些基本问题,但您需要使用 website: 键在 google 进行自定义搜索。 我终于找到了关于我上次使用这个有前途的旧工具失败的线索:

https://www.softfluent.com/product/codefluent-entities/knowledge-center/json-serialization-D2715E9D140C-A6080529C80C

但是密钥 link 指向一个丢失的域,那是路的尽头。

我的问题已解决:

CodeFluent Entities adds a TypeConverterAttribute that allows to convert an entity to string using the EntityDisplayName property. Json.NET detects this attribute and wrongly uses it to serialize the entity to JSON. There are 2 solutions:

Remove this attribute if you don't use it by setting Add Runtime Design Attribute to False Use the Json.NET aspect to generate specific Json.NET attribute on generated classes and properties

但是没有关于如何操作的信息。

正如 SoftFluent 所述,问题可以 post 添加 标签,但用户社区对产品的了解不足,开发团队@meziantou 超载

我真的希望这个项目不会失败,因为这是我对一家隐藏源公司的最后赌注之一,并祈祷他们的服务器不会关闭的每一个过时的免费许可互联网连接依赖更新。

CodeFluent Entities adds a TypeConverterAttribute that allows to convert an entity to string using the EntityDisplayName property. Json.NET detects this attribute and wrongly uses it to serialize the entity to JSON. There are 2 solutions:

Remove this attribute if you don't use it by setting Add Runtime Design Attribute to False

以下配置将阻止 CodeFluent 实体在生成 类 时生成 [System.ComponentModel.TypeConverterAttribute(typeof(CodeFluent.Runtime.Design.NameTypeConverter))]

<cf:producer name="Business Object Model (BOM)" typeName="CodeFluent.Producers.CodeDom.CodeDomProducer, CodeFluent.Producers.CodeDom">
    <cf:configuration addRuntimeDesignAttributes="false" ... />
</cf:producer>

您也可以使用建模器设置此属性。

Use the Json.NET aspect to generate specific Json.NET attribute on generated classes and properties

如果您需要保留 TypeConverter,您可以指示 CodeFluent 实体使用以下方面在生成的 类 和属性上添加自定义 JSON.Net 属性。代码和用法示例可在 GitHub 上找到:https://github.com/SoftFluent/CodeFluent-Entities/tree/master/Extensions/SoftFluent.Json.NET/

为了让你更有信心:是的,这个 SO 标签仍然在 SoftFluent 上被监控。还有支持[at]softfluent.com 邮箱,可以直接联系支持团队。该产品仍受支持,并在向我们报告错误时发布修复程序。我们正在准备一个针对 .Net Standard 2.0 的新版本,但仍将按原样支持现有版本。我还不能提供这个新版本的任何时间表。