小编Fre*_*e2k的帖子

SQL Server中别名的方括号和单引号之间有什么区别?

我看到一些人使用单引号别名列名称,例如:

select orderID 'Order No' from orders
Run Code Online (Sandbox Code Playgroud)

和其他人使用方括号,例如:

select orderID [Order No] from orders
Run Code Online (Sandbox Code Playgroud)

我倾向于使用方括号.有偏好/差异吗?

sql-server quotes alias brackets pointer-aliasing

25
推荐指数
3
解决办法
2万
查看次数

c#foreach循环更新集合中的所有对象

循环遍历一组downloadedCase对象.目的是更新在每个downloadedCase对象上作为属性存在的sorteddictionary(CSVFullColumnList).

代码如下:

    private void generateCSVRows()
    {
        foreach (NewCase downloadedCase in downloadedCases)
        {
            downloadedCase.CSVFullColumnList = this.columnsWithNoValuesFinal;
        }
        string columnNameLower;
        foreach (NewCase downloadedCase in downloadedCases)
        {
            List<string> keys = new List<string>(columnsWithNoValues.Keys);
            foreach (string columnName in keys)
            {
                columnNameLower = columnName.ToLower();
                if (downloadedCase.CSVDataList.ContainsKey(columnNameLower))
                {
                    downloadedCase.CSVFullColumnList[columnNameLower] = downloadedCase.CSVDataList[columnNameLower];
                }
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

但是,当代码到达if语句内的赋值时,将对所有downloadedCase对象完成赋值.例如,在第一次迭代中,集合中的第三个对象也会更新.此外,columnsWithNoValuesFinal也会更新,即使在赋值语句中没有为其分配任何内容.

不需要的分配

有人可以向我解释为什么会这样吗?

c# foreach dictionary list

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