SqlCeParameter.Size seems to be limited to 255 characters for char types.
Eg.
SqlCeParameter param = new SqlCeParameter();
param.ParameterName = parameter_name;
param.DbType = DbType.String;
param.Size = 260;
Now check the value of param.Size, it will be 255.
In the past this problem was avoidable by setting the size to 0. However, this cause a problem if you are re-using the same command and simply changing the parameters value.
Somewhere the system remembers the length of the first value and adjusts the max size to be limited to this length.
Thus for the following values:
"Test"
"Testing"
The second one will error with something like "@param: String truncation: max = 4, len = 7, value = 'testing' "
Has anyone else come across this problem, or found a solution to it