传入实体对象 自动生成添删该查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;
}
下面是添加的方法 请高手教删该查 下面用的是反射和特性 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;
}
解决方案 »
- ASP.net 脚步如何获取FormView的值
- 求教
- 作了个文件下载功能完整,但如果字符超过16个中文的话,前面超过的文字被变成乱麻
- 急!求不同系统之间文件传递的soap实例,或Request.InputStream做法
- .net 问题
- 关于jmail发送附件的2个问题
- 不知道这问题有没有点挑战性
- 请问如何让ASP.NET 2.0的页面代码不遵循XHTML 1.0 Transitional规范?
- 如何实现在同一个网页上按下不同的按钮,出现不同的结果。结果可以出相册效果?新人 求帮忙!
- 关于ASP。NET的代码,请各位高手帮帮忙解释一下!
- Url重写问题(UrlReWriter.dll)
- 谁能解决此问题.我破产给分!!!
参考