问题标签 [codefluent]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
39 浏览

codefluent - 如果提供的参数为 0,则 LoadBy 方法返回 null

我的模型包含一个具有数字属性的实体:

LoadByLandcode 方法生成的代码如下所示:

如果提供的 landCode 参数为 0,为什么 CodeFluent 返回 null?我不希望这种情况发生,因为landCode 0 也是数据库中的有效值。我怎样才能改变这种行为?

0 投票
1 回答
63 浏览

codefluent - CodeFluent 在方法中生成 0 检查或在存储过程中生成 NULL 检查

我的模型包含一个具有数字 Landcode 属性的实体。值 0 是此属性的有效值:

LoadByLandcode 方法生成的代码如下所示:

如您所见,如果提供的 landCode 参数为 0,CodeFluent 将返回 null。为了避免这种检查,我指出 landCode 参数可以为空:

或者

现在在 BOM 中已删除对 0 的检查,但在存储过程中添加了对 landCode 参数的 null 检查:

我既不想在 BOM 中检查 0,也不想在存储过程中检查 NULL。我怎样才能做到这一点?

0 投票
1 回答
54 浏览

codefluent - SQL Producer - PK 和 FK 约束命名

在运行数据透视文件时,我们的模型遇到了问题。看来我们在 PK 和 FK 上遇到了命名冲突(就像在这个中一样)。

我们的用例是我们创建了新表(比如 tableAB),但是由于命名冲突,没有创建 PK(比如 PK_tableA),因为另一个表(比如 tableAB)已经定义了这个 PK(PK_tableA)。由于 FK 引用了 tableAB 上不存在的 PK,因此数据透视表将停止处理。

有没有办法重命名 PK 和 FK 约束?特别是我们已经使用了一个覆盖 SoftFluent.Samples.CustomNamingConvention.FormatNamingConvention 的自定义类,但这似乎只适用于 DF_ 约束(参见此处)。我想通过 PK 和 FK 约束来实现相同的目标,最好的解决方案是什么?

编辑 08/07/2016

终于找到了对象转换的方法。下面的代码生成具有预期命名的约束:

感谢提供的支持。

0 投票
1 回答
42 浏览

codefluent - CodeFluent 在删除相关实体时尝试使用 NULL 更新 bigint 类型的不可为空的外键

在我的模型中,我使用 bigint (ulong) 作为实体键的类型。值 0 必须用于空键。外键的列不能为空,因为在我的方法中我只想检查值 0 而不是空值。一切正常,除了删除其他实体引用的相关实体。

这是我的模型:

这是我的代码:

最后一条语句给出以下错误:无法将值 NULL 插入列“Order_Customer_Id”,表“CodeFluentTest.dbo.Order”;列不允许空值。更新失败。

这是因为 Customer_Delete 存储过程包含以下更新语句: UPDATE [Order] SET [Order].[Order_Customer_Id] = NULL WHERE ([Order].[Order_Customer_Id] = @Customer_Id)

当然这不起作用,因为 Order_Customer_Id 列不可为空。如何指示 CodeFluent 将值 0 而不是 NULL 放入 Order_Customer_Id 列?

0 投票
2 回答
42 浏览

c# - 由于 OnItemKeyChanged 事件导致 Codefluent 内存泄漏

我有一个缓存多个 codefluent 对象的应用程序。当我将其中几个缓存对象放在临时集合中时,集合永远不会从内存中释放。通过使用 ANTS 分析应用程序,我发现了小人:当对象插入到集合中的“BaseAdd”函数中的集合时附加的事件处理程序。

如何防止附加此事件处理程序或如何清理它?

0 投票
1 回答
65 浏览

codefluent - 当实体键的类型为 bigint (ulong) 时,如何将外键设置为 null?

在我的模型中,我使用 bigint (ulong) 作为实体键的类型。我希望数据库强制引用完整性,所以我将 persistenceEnforce 设置为 true。外键的列可以为空。使用参照完整性,只有在没有外键引用实体时才能删除实体,因此在删除实体之前,我必须首先将此关联实体的每个外键设置为空。但是,我不知道如何清除外键。

这是我的模型:

这是我的代码:

上述代码在第二次保存订单时抛出以下异常: UPDATE 语句与 FOREIGN KEY 约束 \"FK_Ord_Ore_Inv_Inv\" 冲突。

这是因为 CodeFluent 生成的代码将值 0 而不是 null 插入到“Order_Invoice_Id”列中。Order.BaseSave 方法中的以下行似乎是错误的: persistence.AddParameter("@Order_Invoice_Id", this.InvoiceId, ((ulong)(0ul)));

我在 Invoice 属性上尝试了设置 persistenceDefaultValue="null" 和 usePersistenceDefaultValue="true",但这并没有解决问题。

0 投票
0 回答
71 浏览

codefluent - 使用继承实体时 PersistenceEnforce 出错

在我的模型中,我设置defaultPersistenceEnforce="true"了 ,因为我希望数据库强制执行参照完整性。但是,删除实体时出现错误。

这是我的模型:

这是我的代码:

我收到以下错误:

orderline.Keywords.Add(keyword);如果我从代码中删除,一切都会好起来的。

下面是存储过程 Order_Delete 的代码:

如您所见,此存储过程中缺少以下行:

0 投票
1 回答
41 浏览

c# - codefluent 阻止获取财产

我有两个实体:

  1. 类别
  2. 产品

并且1:n relationship它们之间存在一个,因此我可以通过以下方式获取一个类别中的所有产品: Category.Products 但是,我不希望此属性存在。这是因为类别是chached,如果我以这种方式加载产品,它们也将保留在缓存中。

我可以加载产品ProductCollection.LoadByCategpory,这很好。

如何防止属性 Products 成为类别的一部分?我认为将“Hasget”设置为 false 可以解决问题,但事实并非如此。

0 投票
0 回答
49 浏览

codefluent - 关系问题

我有一份 Codefluent for Entities 的试用版,并在购买前尝试为我的第一个模型建模。

然而,在一些早期的视频中,似乎有可能以我想要的方式获得有关关系的信息。

现在这样做并查看更新的视频时,似乎关系的信息与连接端的属性有关。我已经使用并使用了 llblgen orm 工具,将其“对立”有点令人困惑。是否有可能改变这种视觉行为?感谢您的任何助手和建议//格雷格

0 投票
0 回答
36 浏览

codefluent - 关于 Codefluent 试用版中多个命名空间的限制?

我还没有买终极版,但我真的在考虑,但是我有问题。

我有终极试用版,似乎无法使用多个命名空间。试用版有限制吗?
当使用多个命名空间时,我在“bom”库项目中遇到编译器错误。