【发布时间】:2014-01-17 04:14:29
【问题描述】:
foreach(string file in strAllFiles)
{
foreach(char c in file)
{
if (c > 127)
{
using (SqlConnection con = new SqlConnection(CS))
{
con.Open();
SqlCommand sqlcom = new SqlCommand("sp_ReplaceNonAsciiCharset", con);
sqlcom.CommandType = CommandType.StoredProcedure;
SqlParameter sqlparam = new SqlParameter();
sqlparam.ParameterName = "@non_ascii_char";
sqlparam.Direction = ParameterDirection.Input;
sqlparam.SqlDbType = SqlDbType.NChar;
sqlparam.Size = 2;
sqlparam.Value = c;
sqlcom.Parameters.Add(sqlparam);
object o = sqlcom.ExecuteScalar();
int i = file.IndexOf(c);
file1 = file.Remove(i, 1);
file2 = file1.Insert(i, o.ToString());
file = file2;
}
}
}
}
在最后一行file=file2,我收到错误:
无法分配给文件,因为它是一个 foreach 迭代变量
【问题讨论】:
-
请明确说明您打算做什么!如果您不指定您要做什么,我们无法帮助解决它!
-
这个错误很容易解释..您正在尝试为作为
foreach迭代一部分的变量分配一个值.. -
复制错误信息到谷歌——几乎只给出答案...
-
你列出了很多事实。你想问一个问题吗?
标签: c#