有时我想分解一个常量字符串,原因是格式化,通常是SQL.
const string SELECT_SQL = "SELECT Field1, Field2, Field3 FROM TABLE1 WHERE Field4 = ?";
Run Code Online (Sandbox Code Playgroud)
至
const string SELECT_SQL = "SELECT Field1, Field2, Field3 "
+ "FROM TABLE1 "
+ "WHERE Field4 = ?";
Run Code Online (Sandbox Code Playgroud)
但是,C#编译器不允许第二种形式为常量字符串.为什么?
我有一个很大的C#类,除了public const string字段之外什么都没有.但是,在一种情况下,我试图将字符串和枚举值连接到const string字段中,如下所示:
public const string GET_VALUES = "SELECT * FROM [tbl] WHERE [id] = " + Enum.Val;
Run Code Online (Sandbox Code Playgroud)
但是,我收到此编译器错误:
'Namespace.SqlStatements.GET_VALUES' must be constant
Run Code Online (Sandbox Code Playgroud)
我知道我可以删除该const条款,但我想保持这个类中的所有字段一致.是否可以在C#中连接常量字符串和枚举?