我正在使用 Visual Studio 2005 和 C# 2.0,我正在尝试使用string.Split
函数和 lambda 表达式拆分逗号分隔的字符串,如下所示:
string s = "a,b, b, c";
string[] values = s.Split(',').Select(sValue => sValue.Trim()).ToArray();
我收到一条错误消息,提示无法识别该表达式——我该如何解决这个问题?
我正在使用 Visual Studio 2005 和 C# 2.0,我正在尝试使用string.Split
函数和 lambda 表达式拆分逗号分隔的字符串,如下所示:
string s = "a,b, b, c";
string[] values = s.Split(',').Select(sValue => sValue.Trim()).ToArray();
我收到一条错误消息,提示无法识别该表达式——我该如何解决这个问题?
.NET 2.0 不使用 lambda 表达式。您需要编译到 .NET 3.0 才能使用它们。
没有 Linq 和 Lambdas 的方法
string source = "a,b, b, c";
string[] items = source.Split(new char[] { ',', ' ' }, StringSplitOptions.RemoveEmptyEntries);
C# 2.0 中不包含 Lamba 表达式
也许你可以在 SO 上参考这篇文章
拆分以逗号分隔的文本框值并计算文本中值的总数,拆分后的值显示在 ritchTextBox 中。
private void button1_Click(object sender, EventArgs e)
{
label1.Text = "";
richTextBox1.Text = "";
string strText = textBox1.Text.Trim();
string[] strArr = strText.Split(',');
int count = 0;
for (int i = 0; i < strArr.Length; i++)
{
count++;
}
label1.Text = Convert.ToString(count);
for (int i = 0; i < strArr.Length; i++)
{
richTextBox1.Text += strArr[i].Trim() + "\n";
}
}
您可以使用LINQBridge(MIT 许可)向 C# 2.0 添加对 lambda 表达式的支持:
借助 Studio 的多目标和 LINQBridge,您将能够使用 C# 3.0 编译器的全部功能编写本地(LINQ to Objects)查询,而您的程序只需要 Framework 2.0。