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

Cli*_*rce 6 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
Run Code Online (Sandbox Code Playgroud)

错误是:

Identifier expected; 'void' is a keyword
Run Code Online (Sandbox Code Playgroud)

我无法争辩,我只是在寻找一种解决方法.

谢谢.

Ric*_*ard 22

在标识符前面加上"@":

@void
Run Code Online (Sandbox Code Playgroud)

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