Tuesday, September 9, 2008

Operator + cannot be applied to operands of type string and method group, C# error

Cause

This error comes up when you tries to append two strings with the “+” sign. As the + sign in C# is a arithmetical operator so you cannot use this too append two string type values. To use “+” the values or variables must be if numeric type.

As C# uses doesn’t supports implicit typecasting, for string concatenation use “&” sign.

Example

string varTest = "";
string str1 = "abc";
int str2=21;

varTest = str1 + str2;

The above stqatmet will cause in error stating "Operator + cannot be applied to operands of type string and method group". Because we are trying to add a string variable in a numeric variable.

To remove the error you must convert all the numeric (integer) datatype or variables to string.

varTest = str1 & str2.ToString();

The output of the above code will be abc21

Conclusion
We must convert all values to a uniform datatype before storing them into a variable.

No comments: