?? mssqlserver.cs
字號:
using System;
using System.Reflection;
using System.Collections;
using System.Text;
using iSun.Common;
namespace iSun.SPL.Factory.Dialect
{
/// <summary>
/// MsSqlServer 的摘要說明。
/// </summary>
public class MsSqlServer : iSun.SPL.Factory.DialectFactory
{
public MsSqlServer(object entitys):base(entitys)
{
//
// TODO: 在此處添加構造函數邏輯
//
}
public override string BuildInsertCom()
{
System.Text.StringBuilder _InsStrIns = new StringBuilder("insert into ["+this.GetTableName()+"]");
System.Text.StringBuilder _InsStrFields = new StringBuilder();
System.Text.StringBuilder _InsStr = new StringBuilder();
System.Text.StringBuilder _InsStrValues = new StringBuilder();
Hashtable ht = ReaderAutoMapper();
if (ht==null)
{
//log
return null;
}
ht.Remove(this.GetGuid()); // 去掉自增字段的信息
int i = 0;
IDictionaryEnumerator myEnumerator = ht.GetEnumerator();
try
{
while ( myEnumerator.MoveNext() )
{
if (i==0)
{
_InsStrFields.Append("["+myEnumerator.Key.ToString()+"]");
_InsStrValues.Append("'"+myEnumerator.Value+"'");
}
else
{
_InsStrFields.Append(",[" + myEnumerator.Key.ToString()+"]");
_InsStrValues.Append(",'" + myEnumerator.Value+"'");
}
i ++;
}
_InsStr.AppendFormat("{0} ({1}) values ({2}) ",_InsStrIns,_InsStrFields,_InsStrValues);
return _InsStr.ToString();
}
catch(System.Exception e)
{
// log to log
throw e;
}
}
public override string BuildUpdateCom()
{
System.Text.StringBuilder _strUpdate =new StringBuilder();
System.Text.StringBuilder _strWhere = new StringBuilder();
System.Text.StringBuilder _strFieldValue = new StringBuilder();
Hashtable ht = ReaderAutoMapper();
if (ht==null)
{
return null ;
}
ht.Remove(this.GetGuid()); // 去掉自增字段的信息
int i = 0 ;
_strWhere.Append(this.GetGuid() + "='" + Common.ReflectionUntil.GetPropertyValue(this.Entitys,this.GetGuid()) + "'" );
IDictionaryEnumerator myEnumerator = ht.GetEnumerator();
try
{
while( myEnumerator.MoveNext())
{
if (i==0)
{
_strFieldValue.Append(myEnumerator.Key.ToString());
_strFieldValue.Append(" = '"+myEnumerator.Value+"'");
}
else
{
_strFieldValue.Append("," + myEnumerator.Key.ToString());
_strFieldValue.Append("='" + myEnumerator.Value+"'");
}
i ++;
}
_strUpdate.AppendFormat("update [{0}] Set {1} where {2}",this.GetTableName(),_strFieldValue,_strWhere);
return _strUpdate.ToString();
}
catch(System.Exception e)
{
throw e ;
}
}
public override string BuildDeleteCom()
{
System.Text.StringBuilder _strDelete = new StringBuilder();
_strDelete.Append("delete from ");
_strDelete.Append("["+this.GetTableName()+"]");
_strDelete.Append(" where ");
_strDelete.Append(this.GetGuid());
_strDelete.Append(" = '");
_strDelete.Append(Common.ReflectionUntil.GetPropertyValue(this.Entitys,this.GetGuid()));
_strDelete.Append("'");
return _strDelete.ToString();
}
public override string BuildDeleteCom(string condition)
{
System.Text.StringBuilder _strDelete = new StringBuilder();
_strDelete.Append("delete from ");
_strDelete.Append(this.GetTableName());
_strDelete.Append(" where ");
_strDelete.Append(condition);
return _strDelete.ToString();
}
public override string SelectCommand(IList list)
{
StringBuilder _SelStr = new StringBuilder(this.SelectAllCommand());
if( list == null )
{
return _SelStr.ToString();
}
IEnumerator myEnumerator = list.GetEnumerator();
try
{
while ( myEnumerator.MoveNext() )
{
myEnumerator.Current.ToString();
}
return _SelStr.ToString();;
}
catch(System.Exception e)
{
throw e;
}
}
public override string SelectCommand(string id)
{
System.Text.StringBuilder sb = new StringBuilder("");
string _strSel = base.SelectAllCommand();
sb.Append(_strSel+" ");
sb.Append(" where ");
sb.Append(this.GetGuid());
sb.Append("=");
sb.Append("'"+id+"'");
return sb.ToString();
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -