问题标签 [petapoco]

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 投票
3 回答
2618 浏览

asp.net-mvc - 使用 PetaPoco 与 StructureMap 的共享连接

这是我当前在 Global.asax 中的 StructureMap 实现:

下面是上面提到的代码:

我读过使用共享连接可能会稍微提高性能,所以我想知道如何在我的 MVC 应用程序中使用它。我想我必须将一个新创建的 PetaPoco.Database 对象传递给我的存储库的构造函数?

谢谢

0 投票
1 回答
1001 浏览

asp.net-mvc-3 - 使用 PetaPoco 动态“注入”一个 WHERE 子句

我正在使用 .NET MVC 3 和 PetaPoco 构建一个带有共享数据库的多租户应用程序。租户 ID(连同其他信息)在登录时保存在 FormsAuth cookie 中,并且可通过 BaseController 属性提供给所有控制器。大多数表(即除了主“租户”表之外)包括一个 TenantId 列。

不是手动将“WHERE TenantId = X”添加到功能表上的所有 CRUD,有没有一种方法可以在查询执行之前将其动态添加到查询中?换句话说,也许维护一个表列表,如果查询是针对其中一个表,那么在 TenantId 过滤器中动态添加?

好处当然是它消除了手动添加过滤器的需要,从而减少了它被遗漏的机会。我确实找到了一个使用 NHibernate 的示例,我怀疑它可以重新利用。我正在使用 Ninject 以防万一。

0 投票
1 回答
1184 浏览

petapoco - PetaPoco 集合属性

PetaPoco 中对作为集合的 POCO 属性进行水合的正确方法是什么?我想做这样的事情,但不知道怎么做。

其中 ColorCategory 类有一个 List 属性 SubColors。

0 投票
1 回答
2745 浏览

c# - Petapoco 在具有一对多关系的同时删除数据?

在我的项目中,我们使用 petapoco 作为我们的 ORM 进行数据访问。但是我在删除具有一对多关系的数据时遇到了一些困难。我有两个名为 user 和 group 的表。这里一个用户可以是多个组的成员。所以用户和组表是通过使用另一个名为 UserGroup 的表来关联的,该表在我们的项目中没有作为单独的模型公开。那么如何使用 petapoco 从组中删除用户?

我的用户模型看起来像这样

我的组模型看起来像这样

我做过这样的删除

有人帮我解决这个问题吗?

0 投票
3 回答
2877 浏览

c# - 从列表更新事务中的数据库

我有一个有 2 列的数据库表,我有一个 T 有 2 个属性的列表。

如何创建交易以便我可以有效地说:

如果要执行一次更新,则可能不一定需要交易,但如果我的列表中有 100 个项目,那么需要什么才能使其正常工作?

0 投票
1 回答
2530 浏览

petapoco - 使用 Petapoco 进行分页、多 Poco 查询?

PetaPoco 很棒,涵盖了分页查询Multi-Poco 映射,但我想弄清楚是否有办法将它们一起做?

编辑:

这是我用来获取 MultiPoco 数据的存储库方法:

Petapoco.cs 中的方法声明

两者都接受一个返回类型参数。

所以我想我的问题是,将 PetaPoco 中提供的分页查询功能与 MultiPoco 查询一起使用的最佳方法是什么,因为提供的方法仅适用于单一返回类型?

0 投票
1 回答
731 浏览

asp.net-mvc-3 - 仅在发生错误时使用 PetaPoco 记录 SqlCommand

我知道我可以使用 PetaPoco 记录异常:

我也意识到我可以转储命令文本+参数:

自然,我真的不想在生产环境中记录每个命令+参数。

在引发异常时记录命令+参数的最佳方法是什么?

谢谢!

0 投票
1 回答
1581 浏览

c# - PetaPoco 跨越多个数据库

不要问为什么,但是有四个数据库。其中之一是我有权修改架构。我们称它为external。同样,这是一项遗留交易,但在其他三个数据库之一(称为main )中有大约 60 个表。这些表中的每条记录都有一个字段,该字段将其链接到external中相应表中的记录。

PetaPoco 可以快速解决很多麻烦。试探性地,我尝试了多个 Database.tt 文件来操作所有四个数据库。有没有更好的办法?

  1. 我应该在外部创建引用其他数据库中商品的同义词或视图吗?然后只在外部使用一个 Database.tt ?
  2. 链接表的组合 POCO 是否合理?
0 投票
1 回答
4210 浏览

c# - PetaPoco 部分更新

有人有部分更新的 petapoco 源代码吗?根据 petapoco 文档,应该有这个功能。

http://www.toptensoftware.com/Articles/116/PetaPoco-Partial-Record-Updates

但是我已经从 github 下载了源代码,但是缺少部分更新。如果有人有部分更新的源代码,请与我分享。

0 投票
1 回答
884 浏览

c# - 如何在 IEnumerable 中查找类型由 PetaPoco.Database.Query 返回?

我想在运行时找出 ExpandoObject 中的所有类型。

这是一些探索性代码:

where 方法礼貌地跳过了返回的 ExpandoObject 中的空值......几乎不是一个解决方案,因为它依赖于甚至首先返回的行。

有没有更好的方法来查询 PetaPoco.Database 在构建 ExpandoObject 时学到了什么?

(后备是再次查询数据库以获取其模式对象。)