I am using Visual Studio 2005 and C# 2.0, and I am trying to split a comma-separated string using the string.Split
function and a lambda expression as follows:
string s = "a,b, b, c";
string[] values = s.Split(',').Select(sValue => sValue.Trim()).ToArray();
I get an error saying that the expression is not recognized -- how can I resolve this?
This question is related to
c#
You could use LINQBridge (MIT Licensed) to add support for lambda expressions to C# 2.0:
With Studio's multi-targeting and LINQBridge, you'll be able to write local (LINQ to Objects) queries using the full power of the C# 3.0 compiler—and yet your programs will require only Framework 2.0.
Lamba expression aren't included in c# 2.0
maybe you could refert to this post here on SO
Split a Textbox value separated by comma and count the total number of values in text and splitted values are shown in 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";
}
}
A way to do this without Linq & Lambdas
string source = "a,b, b, c";
string[] items = source.Split(new char[] { ',', ' ' }, StringSplitOptions.RemoveEmptyEntries);
.NET 2.0 does not use lambda expressions. You need to compile to .NET 3.0 to use them.
Source: Stackoverflow.com