双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

net自动生成sql语句问题?

tubinbinit tubinbinit 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
传入实体对象 自动生成添删该查sql语句
下面是添加的方法 请高手教删该查

下面用的是反射和特性

public static String GetInsertSql(object s)
{
Type t= s.GetType();//得到对象的类型
PropertyInfo[] proArr= t.GetProperties();
//得到类的所有属性

string sql1 = "insert into " + t.Name+"(";
string sql2 = ") values (";
//Console.WriteLine(t.Name);

foreach (PropertyInfo pi in proArr)//所有的属性
{
object[] objArr= pi.GetCustomAttributes(false);
//得到这个属性上所有的特性
bool isNotIdnetity=true;//不是自增的标识
foreach (object o in objArr)
{
//Console.WriteLine(o.ToString());
if (o.ToString() == "AttributeDemo.IdentityAttribute")
isNotIdnetity = false;//是自增列
}
if (isNotIdnetity)//如果不是自增列,要添加到sql 语句中
{
//Console.WriteLine(pi.Name);
sql1 += pi.Name + ",";
//Console.WriteLine(pi.GetValue(s,null).ToString());
sql2 += "'" + pi.GetValue(s, null).ToString() + "',";
}

}



sql1 = sql1.Substring(0, sql1.Length - 1);
sql2 = sql2.Substring(0, sql2.Length - 1)+")";
//Console.WriteLine(sql1 + sql2);
return sql1 + sql2;
}
...全文
评论 1
收藏 已收藏
分享
返回顶部
tubinbinit
.NET Framework 17,748 成员 24,324 内容