小编Joh*_* L.的帖子

EF Linq 中的 HAVING 子句

我想获取客户 ID 列表以及该客户下的订单数量。过滤条件为:

  1. 总金额不超过 10 美元的订单将不计算在内。
  2. 未下至少 3 个订单(每个订单总额为 10 美元或更多)的客户将不会被列出。

所以,我会在 SQL 中执行以下操作:

SELECT customerID, COUNT(*)
FROM Orders
WHERE orderTotal > 10
GROUP BY customerID
HAVING COUNT(*) > 2
Run Code Online (Sandbox Code Playgroud)

在 EF 中,我认为这可以表示为:

dbContext.Order
.Where(o => o.orderTotal > 10)
.GroupBy(o => o.customerID)
.Where(g => g.Count() > 2)
.ToList();
Run Code Online (Sandbox Code Playgroud)

但这会产生以下 SQL,它使用派生表和连接而不是简单地使用HAVING子句。我认为这在性能方面远非最佳。是否有更好的方法在 EF 中制定案例,以便翻译后的查询将使用该HAVING条款?

SELECT 
    [Project1].[C1] AS [C1], 
    [Project1].[customerID] AS [customerID], 
    [Project1].[C2] AS [C2], 
    [Project1].[ID] AS [ID], 

FROM ( SELECT 
    [GroupBy1].[K1] AS [customerID], 
    1 AS [C1], 
    [Extent2].[ID] AS …
Run Code Online (Sandbox Code Playgroud)

c# sql linq sql-server entity-framework

3
推荐指数
1
解决办法
1143
查看次数

Visual Studio 2017 无法识别 Webpack 源映射

我正在将 Visual Studio 2017 用于我的 Typescript 项目。我尝试使用 Webpack 为源文件创建捆绑包。Webpack 生成的源映射包含以下格式的源文件 url:“ webpack:///./Main/SomeFile.ts”。这会导致 Chrome 开发工具在“源”选项卡中将 webpack 显示为单独的域。展开后,我可以看到源 ts 文件并成功设置断点。但问题是我无法使用 VS 2017 进行调试,因为我在 IDE 中设置的断点不起作用。

作为解决方法,我手动将webpack:///.源映射文件中的所有这些“”部分替换为“../”,它现在指向源文件相对于捆绑文件的正确路径。现在 VS 会设置断点,我可以在 VS 内进行调试。

我的问题是:

  1. “webpack:///”的含义是什么?为什么生成它而不是相对路径?
  2. 为什么 VS 2017 不采用这些并开箱即用?与我上面尝试的解决方法相比,正确的解决方案是什么?
  3. 如果除了我提到的解决方法之外没有其他解决方案,我如何将其集成到 webpack 处理管道中,以便我不必每次都手动执行?

这是我的配置:

webpack.config.js

const path = require('path');

module.exports = {
    mode: 'development',
    devtool: "source-map",
    entry: {
        app: './Components/MainComponent/MainComponent.ts'
    },
    output: {
        filename: '[name].js',
        path: __dirname + '/dist'
    },
    module: {
        rules: [
            { test: /.css$/, use: 'css-loader' },
            { …
Run Code Online (Sandbox Code Playgroud)

visual-studio typescript webpack

3
推荐指数
1
解决办法
1761
查看次数

MySQL InnoDB 集群实例要求

为什么MySQL InnoDB集群需要至少三个实例才能工作?为什么一主一辅实例还不够?例如,这不就是 SQL Server 故障转移群集的工作原理吗?

mysql

2
推荐指数
1
解决办法
508
查看次数

Nativescript - XSS预防

使用Nativescript编写的移动应用程序(使用跨平台Javascript运行时)是否与网站具有相同的XSS漏洞?

xss nativescript

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