Public stringGetinsertsqlbymodel (Object o) {StringBuilder Sbstart=NewStringBuilder (); StringBuilder Sbfields=NewStringBuilder (); StringBuilder sbvalues=NewStringBuilder (); Type T=O.gettype (); stringModelName =T.name; foreach(PropertyInfo Pincht.getproperties ()) {Sbfields.append (P.name+","); Sbvalues.appendformat ("' {0} ',", P.getvalue (o)); } Sbstart.appendformat ("insert INTO {0} ({1}) VALUES ({2})", Modelname,sbfields.tostring (). TrimEnd (','), Sbvalues.tostring (). TrimEnd (',')); returnsbstart.tostring (); }
If you do not need to add null or empty fields, you can use the following code
Public stringGetinsertsqlbymodel (Object o) {StringBuilder Sbstart=NewStringBuilder (); StringBuilder Sbfields=NewStringBuilder (); StringBuilder sbvalues=NewStringBuilder (); Type T=O.gettype (); stringModelName =T.name; foreach(PropertyInfo Pincht.getproperties ()) { if(P.getvalue (o) = =NULL||string. IsNullOrEmpty (P.getvalue (o). ToString ())) {Continue; } sbfields.append (P.name+","); Sbvalues.appendformat ("' {0} ',", P.getvalue (o)); } Sbstart.appendformat ("insert INTO {0} ({1}) VALUES ({2})", Modelname,sbfields.tostring (). TrimEnd (','), Sbvalues.tostring (). TrimEnd (',')); returnsbstart.tostring (); } }
Convert model to SQL using reflection