c# - LINQ to SQL列有关键字作为列名,如何引用/转义

标签 c# linq syntax escaping

在 LINQ to SQL 语句中,我在数据库中有一个列名,它也是一个 C# 关键字 (void)。如何让编译器将其视为对象属性而不是关键字?

当然,我可以用方法符号重写它,但是必须有一种方法在这里给编译器一个提示......

var p = from c in mytable
        where c.id = rowNumber
        select ( new { voidedState = c.void } );  // <--- Problem is here

错误是:

Identifier expected; 'void' is a keyword

我无法反驳,我只是在寻找解决方法。

谢谢。

最佳答案

在标识符前加上“@”:

@void

标识符的名称是“void”,而不是关键字(这适用于任何需要标识符的地方)。

关于c# - LINQ to SQL列有关键字作为列名,如何引用/转义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/757279/

相关文章:

c# - 在 XML 命名空间中插入和删除节点

c# - 在 Excel 上执行多个更新命令

c# - 按字母顺序对列表进行排序,不包括字母

javascript - 使用这种语法的原因是什么 (0, _.Em)();

sql - 在 SQLite 中添加与添加列?

syntax - 了解 VBScript 中的 Const 表达式

c# - 连接字符串适用于 OLE DB 连接但不适用于 Sql Server Native Client 10.0

c# - 字节数组或矩阵到 BitMap

c# - AnonymousType0#1`6 中的 # 符号是什么意思?

c# - Entity Framework 错误,一张表总是超时