📄 service.cs
字号:
{
if(command.Parameters[i].Direction==ParameterDirection.Output || command.Parameters[i].Direction==ParameterDirection.InputOutput)
{
dbparam[command.Parameters[i].ParameterName]=command.Parameters[i].Value;
}
else if(command.Parameters[i].Direction==ParameterDirection.ReturnValue)
{
dbparam.ReturnValue=(int)command.Parameters[i].Value;
}
}
connection.Close();
return dbparam;
}
catch(System.Exception er)
{
string ss=er.Message;
return dbparam;
}
finally
{
// cleanup...
command.Dispose();
connection.Close();
}
}
}
public DbParams demo(DbParams ht)
{
DbParams reht=new DbParams();
foreach(System.Collections.DictionaryEntry de in ht)
{
reht.Add(de.Value,de.Key);
}
return reht;
}
private ParameterDirection getParameterDirection(short oledbDirection)
{
switch (oledbDirection)
{
case 2:
{
return ParameterDirection.InputOutput;
}
case 3:
{
return ParameterDirection.Output;
}
case 4:
{
return ParameterDirection.ReturnValue;
}
}
return ParameterDirection.Input;
}
/// <summary>
///私有: 获取数据类型(DbType)
/// </summary>
/// <param name="typename">数据类型名称</param>
/// <returns>DbType</returns>
private DbType getDbType(string typename)
{
//DbType t;
#region switch datatype
switch(typename.ToLower())
{
//int64
case "bigint":
return DbType.Int64;
//break;
//int32
case "int":
return DbType.Int32;
//break;
//int16
case "smallint":
return DbType.Int16;
//break;
//byte
case "binary":
return DbType.Byte;
//break;
case "image":
return DbType.Byte;
//break;
case "varbinary":
return DbType.Byte;
//break;
case "tinyint":
return DbType.Byte;
//break;
//boolean
case "bit":
return DbType.Boolean;
//break;
//string
case "varchar":
return DbType.String;
//break;
case "text":
return DbType.String;
//break;
case "nvarchar":
return DbType.String;
//break;
case "ntext":
return DbType.String;
//break;
case "nchar":
return DbType.String;
//break;
case "char":
return DbType.String ;
//break;
//DateTime
case "datetime":
return DbType.DateTime;
//break;
case "smalldatetime":
return DbType.DateTime;
//break;
case "timestamp":
return DbType.DateTime;
//break;
//double
case "float":
return DbType.Double;
//break;
//decimal
case "decimal":
return DbType.Decimal;
//break;
case "money":
return DbType.Decimal ;
//break;
case "smallmoney":
return DbType.Decimal;
//break;
case "numeric":
return DbType.Decimal;
default:
return DbType.Object;
//break;
}
#endregion
}
public SqlDbType getSqlDbType(short dbType, string typeName)
{
SqlDbType type1 = SqlDbType.Variant;
OleDbType type2 = (OleDbType) dbType;
if (type2 <= OleDbType.Filetime)
{
switch (type2)
{
case OleDbType.SmallInt:
case OleDbType.UnsignedSmallInt:
{
return SqlDbType.SmallInt;
}
case OleDbType.Integer:
{
return SqlDbType.Int;
}
case OleDbType.Single:
{
return SqlDbType.Real;
}
case OleDbType.Double:
{
return SqlDbType.Float;
}
case OleDbType.Currency:
{
return ((typeName == "money") ? SqlDbType.Money : SqlDbType.SmallMoney);
}
case OleDbType.Date:
case OleDbType.Filetime:
{
goto Label_0104;
}
case OleDbType.BSTR:
{
goto Label_0161;
}
case OleDbType.IDispatch:
case OleDbType.Error:
case OleDbType.IUnknown:
case ((OleDbType) 15):
case OleDbType.UnsignedInt:
{
return type1;
}
case OleDbType.Boolean:
{
return SqlDbType.Bit;
}
case OleDbType.Variant:
{
return SqlDbType.Variant;
}
case OleDbType.Decimal:
{
goto Label_0119;
}
case OleDbType.TinyInt:
case OleDbType.UnsignedTinyInt:
{
return SqlDbType.TinyInt;
}
case OleDbType.BigInt:
{
return SqlDbType.BigInt;
}
}
return type1;
}
if (type2 == OleDbType.Guid)
{
return SqlDbType.UniqueIdentifier;
}
switch (type2)
{
case OleDbType.Binary:
case OleDbType.VarBinary:
{
return ((typeName == "binary") ? SqlDbType.Binary : SqlDbType.VarBinary);
}
case OleDbType.Char:
case OleDbType.VarChar:
{
return ((typeName == "char") ? SqlDbType.Char : SqlDbType.VarChar);
}
case OleDbType.WChar:
case OleDbType.VarWChar:
{
goto Label_0161;
}
case OleDbType.Numeric:
{
goto Label_0119;
}
case (OleDbType.Binary | OleDbType.Single):
{
return type1;
}
case OleDbType.DBDate:
case OleDbType.DBTime:
case OleDbType.DBTimeStamp:
{
goto Label_0104;
}
case OleDbType.LongVarChar:
{
return SqlDbType.Text;
}
case OleDbType.LongVarWChar:
{
return SqlDbType.NText;
}
case OleDbType.LongVarBinary:
{
return SqlDbType.Image;
}
default:
{
return type1;
}
}
Label_0104:
return ((typeName == "datetime") ? SqlDbType.DateTime : SqlDbType.SmallDateTime);
Label_0119:
return SqlDbType.Decimal;
Label_0161:
return ((typeName == "nchar") ? SqlDbType.NChar : SqlDbType.NVarChar);
}
// /// <summary>
// /// 获取数据类型(SqlDbType)
// /// </summary>
// /// <param name="typename">数据类型名称</param>
// /// <returns>SqlDbType</returns>
// public SqlDbType getSqlDbType(string typename)
// {
// //SqlDbType t;
// #region switch datatype
// switch(typename.ToLower())
// {
// //int64
// case "bigint":
// return SqlDbType.BigInt;
// //break;
// //int32
// case "int":
// return SqlDbType.Int;
// //break;
// //int16
// case "smallint":
// return SqlDbType.SmallInt;
// //break;
// //byte
// case "binary":
// return SqlDbType.Binary;
// //break;
// case "image":
// return SqlDbType.Image;
// //break;
// case "varbinary":
// return SqlDbType.VarBinary;
// //break;
// case "tinyint":
// return SqlDbType.TinyInt;
// //break;
// //boolean
// case "bit":
// return SqlDbType.Bit;
// //break;
// //string
// case "varchar":
// return SqlDbType.VarChar;
// //break;
// case "text":
// return SqlDbType.Text;
// //break;
// case "nvarchar":
// return SqlDbType.NVarChar;
// //break;
// case "ntext":
// return SqlDbType.NText ;
// //break;
// case "nchar":
// return SqlDbType.NChar;
// //break;
// case "char":
// return SqlDbType.Char;
// //break;
// //DateTime
// case "datetime":
// return SqlDbType.DateTime;
// //break;
// case "smalldatetime":
// return SqlDbType.SmallDateTime;
// //break;
// case "timestamp":
// return SqlDbType.Timestamp;
// //break;
// //double
// case "float":
// return SqlDbType.Float;
// //break;
// //decimal
// case "decimal":
// return SqlDbType.Decimal;
// //break;
// case "money":
// return SqlDbType.Money;
// //break;
// case "smallmoney":
// return SqlDbType.SmallMoney;
// //break;
// case "numeric":
// return SqlDbType.Decimal;
// default:
// return SqlDbType.Variant;
// //break;
// }
// #endregion
// }
[Conditional("DEBUG")] public void DebugSecurityToken()
{
DebugSecurityToken(false);
}
[Conditional("DEBUG")] public void DebugSecurityToken(bool showExtendedData)
{
// render...
Console.WriteLine("--------------------------------------------------------------------");
Console.Write("Security token for thread #{0}: ", Thread.CurrentThread.GetHashCode());
string contextToken = GetSecurityToken();
if(contextToken != null)
{
// write the token...
Console.WriteLine(contextToken);
// do we want extended info?
if(showExtendedData == true)
{
// load the token...
Token token = Token.Load(contextToken);
if(token != null)
{
Console.WriteLine("Token ID: {0}", token.Id.ToString());
Console.WriteLine("User ID: {0}", token.UserId.ToString());
Console.WriteLine("NTLM name: {0}", token.NtlmName);
}
else
Console.WriteLine("INVALID TOKEN!");
}
else
Console.WriteLine("NOT FOUND!");
}
Console.WriteLine("--------------------------------------------------------------------");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -