相关疑难解决方法(0)

为什么我不能将常量字符串的串联分配给常量字符串?

有时我想分解一个常量字符串,原因是格式化,通常是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# string const

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

连接常量字符串和枚举

我有一个很大的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#中连接常量字符串和枚举?

c# string enums const

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

标签 统计

c# ×2

const ×2

string ×2

enums ×1