假设我有3个整数都声明为
int Y = 0;
int N = 0;
int U = 0;
Run Code Online (Sandbox Code Playgroud)
从那里我从存储过程中获取2个值(一个字符串和一个整数).
该字符串返回Y,N,U
整数返回参加人数.
string test = dr["ATTEND_CDE"].ToString();
int test2 = int.Parse(dr["COUNT"].ToString());
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法来分配相应的整数除以下计数:
if (test == "Y")
{
Y = test2;
}
else if (test == "N")
{
N = test2;
}
else if (test == "U")
{
U = test2;
}
Run Code Online (Sandbox Code Playgroud)
你真正拥有的是a string("Y","N"或"U")和a之间的映射int.
这是一个完美的用例Dictionary(C#6语法如下):
Dictionary<string, int> myValues = new Dictionary<string, int>()
{
["Y"] = 0,
["N"] = 0,
["U"] = 0
};
//usage
myValues[stringFromDatabase] = valueFromDatabase;
Run Code Online (Sandbox Code Playgroud)
请注意,如果数据库中的值是垃圾,这将抛出(这可能是您想要的).