我有一個數據庫需要狀態列更新爲單個字符狀態碼('E'或'U')。「char」的替代枚舉
我想使用枚舉通過我的API更新此字段以確保可能的值被正確限制。顯然,枚舉不能是char類型的。什麼可能是一個好的替代方法?
不,我不能改變數據庫架構:)
我有一個數據庫需要狀態列更新爲單個字符狀態碼('E'或'U')。「char」的替代枚舉
我想使用枚舉通過我的API更新此字段以確保可能的值被正確限制。顯然,枚舉不能是char類型的。什麼可能是一個好的替代方法?
不,我不能改變數據庫架構:)
您可以指定字符來枚舉成員。
這是否幫助:
enum Status
{
Empty = 'E',
Updated = 'U'
}
void Main()
{
Status status = Status.Empty;
Console.WriteLine("{0}: {1}", status, (char)status);
}
有趣的是,我沒有意識到編譯器允許這:)謝謝 – leppie 2010-07-28 11:29:26
我也沒有... Linqpad的好處! – 2010-07-28 11:30:51
我以前看過這個設置,對我來說似乎有些不好意思,並且不能確保數據的完整性(您必須記住演員表)。如果沒有更好的可用,我可以使用它。 – fearofawhackplanet 2010-07-28 12:16:53
byte
- 如果你有char
ushort
- 如果你有nchar
兩者可以轉換到底層整數,然後轉換爲char
( C#)。
看起來像http://stackoverflow.com/questions/1180174/how-to-implement-c-enum-for-enumerated-char1-database-field - 很有幫助,這將有助於你。 – Chris 2010-07-28 11:27:54