快速开发vs.net+c#程序(-)

类别:.NET开发 点击:0 评论:0 推荐:

一、已有数据库(SQL)表,快速生成对应存储过程的工具。SQLPilot.exe

     SQLPilot.exe这个程序是CCF的一个朋友写的,具体请参考http://bbs.et8.net/bbs/showthread.php?t=534183

二、已有数据库表,快速生成列表、基本查询、高级查询、插入新行、删除、编辑asp.net页面的工具Asp.Net Maker

http://www.hkvstore.com/aspnetmaker/

     1.数据库操作类

以下是C#代码:

头文件:

using System;
using System.Web.UI;
using System.Globalization;
using System.Data;
using System.Data.SqlClient;
namespace ns_db
{
public class c_db: UserControl
{

 //********************************
 //  返回数据库连接字符串
 //********************************

 public string ewConnStr()
 {
  return "Password=******;Persist Security Info=True;User ID=sa;Initial Catalog=******;Data Source=

(Local)";
 } // End ewConnStr

 //******************************************************
 //  返回一个 DataView 根据 Connection String & SQL
 //******************************************************

 public DataView ewDataView(string sConn, string sSQL)
 {
  try
  {

   // Create a new Connection Object
   SqlConnection oConn = new SqlConnection(sConn);

   // Create a new DataAdapter using the Connection Object and SQL statement
   SqlDataAdapter oDa = new SqlDataAdapter(sSQL, oConn);

   // Create a new DataSet Object to fill with Data
   DataSet oDs = new DataSet();

   // Fill the DataSet with Data from the DataAdapter Object
   oDa.Fill(oDs, "ewDataSet");
   return oDs.Tables[0].DefaultView;
  }
  catch (SqlException oErr)
  {
   Session["dberrmsg"] = ewDataErrorMessage(oErr);
   return null;
  }
 } // End ewDataView

 //*********************************
 //  返回一个 DataView for Linking
 //*********************************

 public DataView ewDataViewLink(string sConn, string sTable/*表名*/,
  string sLnkFld, string sDispFld,
  string sDispFld2, string sFilterFld,
  string sOrderBy/*排序列*/, string sOrderType/*排序规则*/,
  bool bDistinct/*是否剔除重复值*/, string sFilter)
 {
  string sSQL;
  try
  {

   // Construct SQL statement
   sSQL = "SELECT";
   if (bDistinct)
   {
    sSQL += " DISTINCT";
   }
   sSQL += " [" + sLnkFld + "], [" + sDispFld + "]";
   if (sDispFld2 != "")
   {
    sSQL += ", [" + sDispFld2 + "]";
   }
   if (sFilterFld != "")
   {
    sSQL += ", [" + sFilterFld + "]";
   }
   sSQL += " FROM [" + sTable + "]";
   if (sFilter != "")
   {
    sSQL += " WHERE " + sFilter;
   }
   if (sOrderBy != "")
   {
    sSQL += " ORDER BY [" + sOrderBy + "] " + sOrderType;
   }

   // Create a new Connection Object using the Connection String
   SqlConnection oConn = new SqlConnection(sConn);

   // Create a new DataAdapter using the Connection Object and SQL statement
   SqlDataAdapter oDa = new SqlDataAdapter(sSQL, oConn);

   // Create a new DataSet Object to fill with Data
   DataSet oDs = new DataSet();

   // Fill the DataSet with Data from the DataAdapter Object
   oDa.Fill(oDs, "ewDataSet");

   // Create the TextField and ValueField Columns
   oDs.Tables[0].Columns.Add("ewValueField",Type.GetType("System.String"),"[" + sLnkFld + "]");
   if (sDispFld2 == "")
   {
    oDs.Tables[0].Columns.Add("ewTextField",Type.GetType("System.String"),"[" + sDispFld + "]");
   }
   else
   {
    oDs.Tables[0].Columns.Add("ewTextField",Type.GetType("System.String"),"[" + sDispFld + "] +

', ' + [" + sDispFld2 + "]");
   }
   return oDs.Tables[0].DefaultView;
  }
  catch (SqlException oErr)
  {
   Session["dberrmsg"] = ewDataErrorMessage(oErr);
   return null;
  }
 } // End ewDataViewLink

 //*********************************************************
 //  根据 Connection String & SQL 返回 Records 的数量
 //*********************************************************

 public int ewRecordCount(string sConn, string sTable, string sWhere)
 {
  string sSQL;
  try
  {

   // Construct SQL
   sSQL = "SELECT COUNT(*) FROM [" + sTable + "]";
   if (sWhere != "")
   {
    sSQL += " WHERE " + sWhere;
   }

   // Create a new Connection Object using the Connection String
   SqlConnection oConn = new SqlConnection(sConn);

   // Create a new DataAdapter using the Connection Object and SQL statement
   SqlDataAdapter oDa = new SqlDataAdapter(sSQL, oConn);

   // Create a new DataSet object to fill with Data
   DataSet oDs = new DataSet();

   // Fill the DataSet with Data from the DataAdapter Object
   oDa.Fill(oDs, "ewDataSet");
   return Convert.ToInt32(oDs.Tables[0].Rows[0][0]);
  }
  catch (SqlException oErr)
  {
   Session["dberrmsg"] = ewDataErrorMessage(oErr);
   return 0;
  }
 } // End ewRecordCount

 //***********************************************************
 //  返回 1-page DataView 根据 Connection String & SQL
 //***********************************************************

 public DataView ewDataViewPage(string sConn, string sSQL,
  int iCurrentRec, int iPageSize)
 {
  try
  {

   // Create a new Connection Object using the Connection String
   SqlConnection oConn = new SqlConnection(sConn);

   // Create a new DataAdapter using the Connection Object and SQL statement
   SqlDataAdapter oDa = new SqlDataAdapter(sSQL, oConn);

   // Create a new DataSet object to fill with Data
   DataSet oDs = new DataSet();

   // Fill the DataSet with Data from the DataAdapter Object
   oDa.Fill(oDs, iCurrentRec, iPageSize, "ewDataSet");
   return oDs.Tables[0].DefaultView;
  }
  catch (SqlException oErr)
  {
   Session["dberrmsg"] = ewDataErrorMessage(oErr);
   return null;
  }
 } // End ewDataViewPage

 //*************************************************
 //  Return a DataReader based on Connection & SQL
 //*************************************************

 public SqlDataReader ewDataReader(SqlConnection oConn, string sSQL)
 {
  try
  {

   // Create a DataReader Object
   SqlDataReader oDr;

   // Create a new Command Object using the Connection and SQL statement
   SqlCommand oCmd = new SqlCommand(sSQL, oConn);

   // Execute the SQL statement against the Command to get the DataReader
   oDr = oCmd.ExecuteReader();
   return oDr;
  }
  catch (SqlException oErr)
  {
   Session["dberrmsg"] = ewDataErrorMessage(oErr);
   return null;
  }
 } // End ewDataReader

 //**********************************************
 //  Return Error Message based on Error Object
 //**********************************************

 public string ewDataErrorMessage(SqlException oErr)
 {
  string sDbErrMsg;
  sDbErrMsg = "";
  for (int i = 0; i <= oErr.Errors.Count - 1; i++)
  {
   sDbErrMsg += "Message: " + oErr.Errors[i].Message + "
"
    + "Line Number: " + oErr.Errors[i].LineNumber + "
"
    + "Source: " + oErr.Errors[i].Source + "
"
    + "Procedure: " + oErr.Errors[i].Procedure + "
";
  }
  return sDbErrMsg;
 } // End ewDataErrorMessage

 //***************************
 //  Return Upload File Name
 //***************************

 public string ewUploadFileName(string sFileName)
 {
  string sOutFileName;

  // Amend your logic here
  sOutFileName = sFileName;

  // Return computed output file name
  return sOutFileName;
 } // End ewUploadFileName

 //******************************************************
 //  Return Formatted Number similar to VB FormatNumber
 //  - IncludeLeadingDigit is not supported
 //******************************************************

 public string ewFormatNumber(object oNo, int iDecPlace, int iUseParen, int iGroupDigits)
 {
  NumberFormatInfo oNfi = (NumberFormatInfo) NumberFormatInfo.CurrentInfo.Clone();
  oNfi.NumberDecimalDigits = iDecPlace; // NumDigitsAfterDecimal

  // IncludeLeadingDigit: not used
  if (iUseParen == -1) // UseParensForNegativeNumbers: True
  {
   oNfi.NumberNegativePattern = 0;
  }
  else if (iUseParen == 0) // UseParensForNegativeNumbers: False
  {
   oNfi.NumberNegativePattern = 1;
  }
  if (iGroupDigits == -1) // GroupDigits: True
  {
   oNfi.NumberGroupSeparator = ",";
  }
  else if (iGroupDigits == 0) // GroupDigits: False
  {
   oNfi.NumberGroupSeparator = "";
  }

  // Cast for different data types
  if (oNo is short) // short
  { return ((short) oNo).ToString("n",oNfi); }
  else if (oNo is ushort) // ushort
  { return ((ushort) oNo).ToString("n",oNfi); }
  else if (oNo is int) // int
  { return ((int) oNo).ToString("n",oNfi); }
  else if (oNo is uint) // uint
  { return ((uint) oNo).ToString("n",oNfi); }
  else if (oNo is long) // long
  { return ((long) oNo).ToString("n",oNfi); }
  else if (oNo is ulong) // ulong
  { return ((ulong) oNo).ToString("n",oNfi); }
  else if (oNo is float) // float
  { return ((float) oNo).ToString("n",oNfi); }
  else if (oNo is double) // double
  { return ((double) oNo).ToString("n",oNfi); }
  else if (oNo is decimal) // decimal
  { return ((decimal) oNo).ToString("n",oNfi); }
  else
  { return ((decimal) oNo).ToString("n",oNfi); }
 }

 //**********************************************************
 //  Return Formatted Currency similar to VB FormatCurrency
 //  - IncludeLeadingDigit is not supported
 //**********************************************************

 public string ewFormatCurrency(object oNo, int iDecPlace, int iUseParen, int iGroupDigits)
 {
  NumberFormatInfo oNfi = (NumberFormatInfo) NumberFormatInfo.CurrentInfo.Clone();
  oNfi.CurrencyDecimalDigits = iDecPlace; // NumDigitsAfterDecimal

  // IncludeLeadingDigit: not used
  if (iUseParen == -1) // UseParensForNegativeNumbers: True
  {
   oNfi.CurrencyNegativePattern = 0;
  }
  else if (iUseParen == 0) // UseParensForNegativeNumbers: False
  {
   oNfi.CurrencyNegativePattern = 1;
  }
  if (iGroupDigits == -1) // GroupDigits: True
  {
   oNfi.CurrencyGroupSeparator = ",";
  }
  else if (iGroupDigits == 0) // GroupDigits: False
  {
   oNfi.CurrencyGroupSeparator = "";
  }

  // Cast for different data types
  if (oNo is short) // short
  { return ((short) oNo).ToString("c",oNfi); }
  else if (oNo is ushort) // ushort
  { return ((ushort) oNo).ToString("c",oNfi); }
  else if (oNo is int) // int
  { return ((int) oNo).ToString("c",oNfi); }
  else if (oNo is uint) // uint
  { return ((uint) oNo).ToString("c",oNfi); }
  else if (oNo is long) // long
  { return ((long) oNo).ToString("c",oNfi); }
  else if (oNo is ulong) // ulong
  { return ((ulong) oNo).ToString("c",oNfi); }
  else if (oNo is float) // float
  { return ((float) oNo).ToString("c",oNfi); }
  else if (oNo is double) // double
  { return ((double) oNo).ToString("c",oNfi); }
  else if (oNo is decimal) // decimal
  { return ((decimal) oNo).ToString("c",oNfi); }
  else
  { return ((decimal) oNo).ToString("c",oNfi); }
 }

 //********************************************************
 //  Return Formatted Percent similar to VB FormatPercent
 //  - IncludeLeadingDigit is not supported
 //********************************************************

 public string ewFormatPercent(object oNo, int iDecPlace, int iUseParen, int iGroupDigits)
 {
  NumberFormatInfo oNfi = (NumberFormatInfo) NumberFormatInfo.CurrentInfo.Clone();
  oNfi.CurrencyDecimalDigits = iDecPlace; // NumDigitsAfterDecimal

  // IncludeLeadingDigit: not used
  if (iUseParen == -1) // UseParensForNegativeNumbers: True
  {
   oNfi.CurrencyNegativePattern = 0;
  }
  else if (iUseParen == 0) // UseParensForNegativeNumbers: False
  {
   oNfi.CurrencyNegativePattern = 1;
  }
  if (iGroupDigits == -1) // GroupDigits: True
  {
   oNfi.CurrencyGroupSeparator = ",";
  }
  else if (iGroupDigits == 0) // GroupDigits: False
  {
   oNfi.CurrencyGroupSeparator = "";
  }

  // Cast for different data types
  if (oNo is short) // short
  { return ((short) oNo).ToString("p",oNfi); }
  else if (oNo is ushort) // ushort
  { return ((ushort) oNo).ToString("p",oNfi); }
  else if (oNo is int) // int
  { return ((int) oNo).ToString("p",oNfi); }
  else if (oNo is uint) // uint
  { return ((uint) oNo).ToString("p",oNfi); }
  else if (oNo is long) // long
  { return ((long) oNo).ToString("p",oNfi); }
  else if (oNo is ulong) // ulong
  { return ((ulong) oNo).ToString("p",oNfi); }
  else if (oNo is float) // float
  { return ((float) oNo).ToString("p",oNfi); }
  else if (oNo is double) // double
  { return ((double) oNo).ToString("p",oNfi); }
  else if (oNo is decimal) // decimal
  { return ((decimal) oNo).ToString("p",oNfi); }
  else
  { return ((decimal) oNo).ToString("p",oNfi); }
 }
} // End Class
} // End NameSpace

本文地址:http://com.8s8s.com/it/it41391.htm