【发布时间】:2011-07-02 19:46:45
【问题描述】:
出于格式化原因,我有时想拆分一个常量字符串,通常是 SQL。
const string SELECT_SQL = "SELECT Field1, Field2, Field3 FROM TABLE1 WHERE Field4 = ?";
到
const string SELECT_SQL = "SELECT Field1, Field2, Field3 "
+ "FROM TABLE1 "
+ "WHERE Field4 = ?";
但是,C# 编译器不允许第二种形式为常量字符串。为什么?
【问题讨论】:
-
在示例中,我只显示字符串文字,但在某些情况下,我会包含仅在一个地方定义的其他常量字符串(例如字段名称)。
-
我的猜测是那些不是实际的字符串常量...
-
我刚刚在 .net 3.5 中运行了第二个示例,它运行良好。
-
我建议你发布不编译的示例,而不是那些可以编译的示例......