void AddExpressionAssign (CodeMemberMethod method, ControlBuilder builder, MemberInfo member, Type type, string name, string value)
{
CodeExpression expr = CompileExpression (member, type, value, false);
if (expr == null)
return;
CodeAssignStatement assign = new CodeAssignStatement ();
assign.Left = new CodePropertyReferenceExpression (ctrlVar, name);
TypeCode typeCode = Type.GetTypeCode (type);
if (typeCode != TypeCode.Empty && typeCode != TypeCode.Object && typeCode != TypeCode.DBNull)
assign.Right = CreateConvertToCall (typeCode, expr);
else
assign.Right = new CodeCastExpression (type, expr);
builder.Method.Statements.Add (AddLinePragma (assign, builder));
}