问题标签 [plinqo]
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.
c# - LINQ2SQL + PLINQO:如何处理这样的简单情况?
我是 PLINQO 的新手,我对 LINQ2SQL 还很陌生,我正在添加一个新的 DAL(称为 DAL2)与我们现有的旧 DAL 并行。我们的想法是开始对我们添加的每一个新事物使用 linq2sql,然后慢慢开始将旧的 DAL 使用转移到新的 DAL2。
众所周知,LINQ 非常适合简单的事情,但在更复杂的场景(many2many、分离的对象等)中,问题会立即出现,并且需要解决它。PLINQO(与 CodeSmish 一起)来拯救它并添加所有必要的结构和工具以使其更可用。到现在为止还挺好。
现在我已经有了我的 DAL2(我正在使用 Managers)。有用”。但我有几个疑问。
我了解返回由以下查询组成的对象:
…在大多数数据库应用程序中并不是一个奇怪的场景。该查询是一个很好的匿名类型的简单示例。
现在,想象一下这样的表结构。
这个想法是要知道每个标签有多少病人。一个简单的内部连接将在标签和患者标签之间使用 SQL 解决这个问题。为此,我什至不需要访问 Patient 表。(我只需要计数)。
毕竟,我想要的只是例如:
标签 1, 33
标签 2, 21
标签 3, 6
等等……</p>
假设我设法创建了一个 linq2sql 查询:
(我是 LINQ 的新手,所以如果上述内容不好,请原谅我缺少“LINQissm”)
鉴于我无法返回那个“新”匿名类型(除非我选择 Object 和反射,这不是我的意图),我假设我必须创建一个“帮助器”类来包含这两个东西(名称和总数)。这个想法是,上面的代码应该位于数据层或业务层的某个位置,而不是UI 的代码中。
现在真正的问题:
如果上述情况属实,如果我想将该结果(或结果数组)返回到 UI(以便正确显示和处理),我应该在哪里创建那个“帮助程序”?
1) 在 DAL2/Helper/TagNameTotal.cs (举个例子)
2) 在 BLayer/Helpers/TagNameTotals.cs 中?
3)以上都不是?(或两者之一?)
如果以上不正确,我在想什么?
当有人想将查询结果传递给 UI 并对其进行修改时,这不是很正常吗?假设在上面的示例中,我想更改 UI 中的 TagName(也许这不是最好的示例,但它适用)。
对不起,但是当它在 web 项目或简单应用程序之外使用时,我仍然发现整个 LINQ2SQL 有点粗糙。这些是我们一直在使用 ADO.NET(以及之前的记录集)所做的基本事情。
进行选择/加入/组/crazySQL,修改,提交更改。
PLINQO 很好,因为它以粗略的形式消除了 LINQ2SQL 的麻烦(多 2 多、分离、上下文重新生成、缓存等),但它仍然是 LINQ,因此必须应用 LINQ 实践。
我错过了什么?
注意:不要将 PLinq 与 PLinqO 混淆。
exception-handling - 如何在 PLINQO 中捕获 BrokenRuleException?
我通过添加创建了一个自定义规则
到我的实体类。
然后我添加了规则(如视频所示,尽管视频已过时且信息错误):
但是现在我有了调用代码……</p>
我有:分配、安全和验证。
在 PLINQO 中捕获破坏规则异常的正确方法是什么?
c# - 使用强类型数据而不是字符串来绑定到下拉列表
鉴于以下课程....
并给出以下内容。
如何强烈键入下拉列表 DataValue 和 DataText 字段?基本上我不想使用字符串,而是使用实体中的列名,我使用的是 LinqToSql(以及 PLinqo,它是一组 codesmith 模板来生成我的数据层)有人可以帮忙吗?
c# - 在 PLINQO 中删除 M:M 的正确方法?
假设你有这个表结构:
患者 -> PatientTag -> 标签
患者和标签之间的典型 N:M 关系,PatientTag 是具有两个 FK 的中间实体。(PatientId 和 TagId)。
我想删除一个特定的标签,我有它的 ID。我正在这样做,但我想知道是否有更好的方法,因为这些是我使用 PLINQO 编写的第一种方法,我不想从一开始就创建不好的做法。
感谢您对该主题的任何见解。
entity-framework - Plinqo 4 与 EF 4
有没有人有使用 plinqo 4 的经验?与 EF 4 相比有什么好处?
plinqo - PLINQO 未正确命名实体
我将 CSP 文件设置为使用 TableNaming 和 EntityNaming 作为单数:
然而生成的实体是复数的。
例如,我有一个名为 Companies 的表。生成的名称是“公司”,我希望是“公司”(就像 LinqToSql 所做的那样——我正在升级一个项目。)
我有一个名为 EntityStorageItems 的表(与这些实体无关。)生成的名称是“EntityStorageItems”我希望实体名称是“EntityStorageItem”
IOW,它正在创建复数名称。而且我需要它们是单数的(以使用现有代码。)
难道我做错了什么?
asp.net-mvc-2 - 有人对使用 PLINQO 和 ASP.NET MVC 2.0 有任何问题吗?
我问是因为我正在开发一个 ASP.NET MVC 1.0 站点,并考虑升级到 ASP.NET MVC 2.0。然后我读到PLINQO 5.0已经发布(我以前从未听说过 PLINQO)并且对 PLINQO 的能力印象深刻。
1) PLINQO 是否能够在运行时构建 ASP.NET MVC 2.0 UI 项目?
2) 您在使用 PLINQO(尤其是在 ASP.NET MVC 应用程序中)是否有任何不好的经历?
让我确保我的想法是正确的:
使用 PLINQO(假设它支持 ASP.NET MVC 2.0),我应该能够将它指向我的数据库,它将创建 3 个项目:数据、测试和 mvc 2.0 UI?数据将包含 LINQ to SQL 查询,添加了 PLINQO 扩展,并且其他项目设置为默认使用数据项目?
database - 使用 PLINQO 生成的数据时使用存储库模式?
我正在“升级”一个 MVC 应用程序。以前,DAL 是模型的一部分,作为使用标准 LINQ to SQL 查询的一系列存储库(基于实体名称)。现在,它是一个单独的项目,是使用 PLINQO 生成的。
由于 PLINQO 基于实体的属性生成查询扩展,我开始直接在我的控制器中使用它们......并一起消除了存储库。
它工作正常,这更像是一个借鉴您的经验的问题,我应该继续沿着这条路走还是应该重建存储库(使用 PLINQO 作为存储库文件中的 DAL)?
仅使用 PLINQO 生成的数据上下文的一个好处是,当我需要访问数据库时,我只需对数据上下文进行一次引用。在存储库模式下,当我需要数据访问时,我必须引用每个存储库,有时需要在单个控制器上引用多个存储库。
我在存储库中看到的最大好处是恰当命名的查询方法(即 FindAllProductsByCategoryId(int id) 等...)。使用 PLINQO 代码,它是 _db.Product.ByCatId(int id) - 这也不错。
我两者都喜欢,但是当查询使用谓词时,它会变得“鹞”。我可以将其汇总到存储库查询方法中。但是在 PLINQO 代码上,它类似于 _db.Product.Where(x => x.CatId == 1 && x.OrderId == 1); 我不太确定我是否喜欢在我的控制器中使用这样的代码。
你对此有何看法?
codesmith - PLINQO 在构建类库上停止生成
我刚刚开始使用 PLINQO,到目前为止它看起来非常好。
我唯一的问题是,当我对实体进行自定义修改时,我重建了包含的类库,而 codesmith 想要重新生成我的类库,这会提示 Visual Studio 消息。“你的项目已经在外面修改了,要重新加载吗?” ETC..
你能把这个关掉吗?如果我确实想重新生成,我可以右键单击 csp 文件吗?
谢谢
凯文
indexing - PLINQO 主键和索引问题
我有两个表,Profile 和 ProfileCategory
当我使用 PLINGO 生成代码时,出现以下错误
运算符“==”不能应用于“int?”类型的操作数 和“System.Guid”运算符“==”不能应用于“int?”类型的操作数 和'System.Guid'
我深入研究了生成的代码和以下内容..
所以生成的代码好像要比较索引和主键
我可以手动更改代码,但在重新生成时它将被更改回来。
有谁知道为什么会这样?
谢谢
这是来自 dbml 的配置文件片段