当前位置: 首页>>代码示例>>C#>>正文


C# DbParameter.GetType方法代码示例

本文整理汇总了C#中System.Data.Common.DbParameter.GetType方法的典型用法代码示例。如果您正苦于以下问题:C# DbParameter.GetType方法的具体用法?C# DbParameter.GetType怎么用?C# DbParameter.GetType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Data.Common.DbParameter的用法示例。


在下文中一共展示了DbParameter.GetType方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: SetDbType

        public static void SetDbType(DbParameter param, string type)
        {
            if (param == null) return;
            if (string.IsNullOrWhiteSpace(type)) return;

            var paramType = param.GetType();
            PropertyInfo dbTypeProp = null;
            if (!_DbTypePropertyCache.TryGetValue(paramType, out dbTypeProp))
            {
                dbTypeProp = paramType.GetProperties().Where(x => x.GetCustomAttributes(typeof(DbProviderSpecificTypePropertyAttribute), true).Any()).FirstOrDefault();
                _DbTypePropertyCache[paramType] = dbTypeProp;
            }
            if (dbTypeProp == null) return;

            try { dbTypeProp.SetValue(param, Enum.Parse(dbTypeProp.PropertyType, type)); }
            catch (ArgumentException) { }
        }
开发者ID:PeterVDD,项目名称:Kermit,代码行数:17,代码来源:QueryBuilder.cs

示例2:

 void DatabaseInfo.SetParameterType( DbParameter parameter, string dbTypeString )
 {
     var oracleDbTypeProperty = parameter.GetType().GetProperty( "OracleDbType" );
     oracleDbTypeProperty.SetValue( parameter, Enum.Parse( factory.GetType().Assembly.GetType( "Oracle.DataAccess.Client.OracleDbType" ), dbTypeString ), null );
 }
开发者ID:william-gross,项目名称:enterprise-web-library,代码行数:5,代码来源:OracleInfo.cs

示例3: InitializeParameter

		internal override void InitializeParameter(ProviderType type, DbParameter parameter, object value)
		{
			SqlType sqlType = (SqlType)type;
			if(sqlType.IsRuntimeOnlyType)
			{
				throw Error.BadParameterType(sqlType.GetClosestRuntimeType());
			}
			SqlClient.SqlParameter sParameter = parameter as SqlClient.SqlParameter;
			if(sParameter != null)
			{
				sParameter.SqlDbType = sqlType.SqlDbType;
				if(sqlType.HasPrecisionAndScale)
				{
					sParameter.Precision = (byte)sqlType.Precision;
					sParameter.Scale = (byte)sqlType.Scale;
				}
			}
			else
			{
				PropertyInfo piSqlDbType = parameter.GetType().GetProperty("SqlDbType");
				if(piSqlDbType != null)
				{
					piSqlDbType.SetValue(parameter, sqlType.SqlDbType, null);
				}
				if(sqlType.HasPrecisionAndScale)
				{
					PropertyInfo piPrecision = parameter.GetType().GetProperty("Precision");
					if(piPrecision != null)
					{
						piPrecision.SetValue(parameter, Convert.ChangeType(sqlType.Precision, piPrecision.PropertyType, CultureInfo.InvariantCulture), null);
					}
					PropertyInfo piScale = parameter.GetType().GetProperty("Scale");
					if(piScale != null)
					{
						piScale.SetValue(parameter, Convert.ChangeType(sqlType.Scale, piScale.PropertyType, CultureInfo.InvariantCulture), null);
					}
				}
			}
			parameter.Value = GetParameterValue(sqlType, value);

			int? determinedSize = DetermineParameterSize(sqlType, parameter);
			if(determinedSize.HasValue)
			{
				parameter.Size = determinedSize.Value;
			}
		}
开发者ID:modulexcite,项目名称:LinqToSQL2,代码行数:46,代码来源:SqlServerProviderBase.cs

示例4: SetCursorParam

 /// <summary>
 /// 添加游标参数(针对Oracle数据库)
 /// </summary>
 /// <param name="param">参数对象</param>
 public override void SetCursorParam(DbParameter param)
 {
     param.Direction = System.Data.ParameterDirection.Output;
     var dbTypeProperty = param.GetType().GetProperty("OracleDbType");
     var typeValue = EnumHelper.ToEnum("Oracle.ManagedDataAccess.Client.OracleDbType,Oracle.ManagedDataAccess", "RefCursor");
     dbTypeProperty.SetValue(param, typeValue, null);
 }
开发者ID:zdx2015,项目名称:Zeniths,代码行数:11,代码来源:OracleDbProvider.cs

示例5: AssignParameterDbType

 public static void AssignParameterDbType(DbParameter parameter, string systemType)
 {
     if (systemType == "SByte")
         parameter.DbType = DbType.Int16;
     else
         if (systemType == "TimeSpan")
             parameter.DbType = DbType.String;
         else
             if ((systemType == "Guid") && parameter.GetType().Name.Contains("Oracle"))
                 parameter.DbType = DbType.Binary;
             else
                 parameter.DbType = ((DbType)(TypeDescriptor.GetConverter(typeof(DbType)).ConvertFrom(systemType)));
 }
开发者ID:mehedi09,项目名称:GridWork,代码行数:13,代码来源:Controller.cs

示例6: AddDbParameterStatements

		private void AddDbParameterStatements (CodeMemberMethod m, 
		                                       CodeExpression expr, 
		                                       DbParameter param)
		{
			object dbType = param.FrameworkDbType;
			string srcColumn = null;
			
			if (param.SourceColumn != String.Empty)
				srcColumn = param.SourceColumn;
			
			CodeExpression[] args = new CodeExpression[] {
				Const (param.ParameterName),
				PropRef (Local(dbType.GetType().FullName), dbType.ToString ()), 
				Const (param.Size),
				PropRef(Local(typeof (ParameterDirection).FullName), param.Direction.ToString ()),
				Const (param.IsNullable),
				Const (((IDbDataParameter)param).Precision),
				Const (((IDbDataParameter)param).Scale),
				Const (srcColumn),
				PropRef (Local (typeof (DataRowVersion).FullName), param.SourceVersion.ToString ()),
				/* Const (param.SourceColumnNullMapping), */ // TODO: Investigate with other providers
				Const (param.Value)
			};
			m.Statements.Add (Eval (MethodInvoke (expr, "Add", New (param.GetType (), args))));
		}
开发者ID:nlhepler,项目名称:mono,代码行数:25,代码来源:CustomDataClassGenerator.cs

示例7: AddRefCursorParameter

 private static void AddRefCursorParameter(DbParameter parameter)
 {
     //we don't want a direct dependency, so we use reflection
     var fullName = parameter.GetType().FullName;
     if (fullName == "System.Data.OracleClient.OracleParameter")
     {
         var prop = parameter.GetType().GetProperty("OracleType");
         if (prop != null)
         {
             //OracleType.Cursor
             prop.SetValue(parameter, 5, null);
         }
     }
     else if (fullName == "Oracle.DataAccess.Client.OracleParameter")
     {
         var prop = parameter.GetType().GetProperty("OracleDbType");
         if (prop != null)
         {
             //OracleDbType.RefCursor
             prop.SetValue(parameter, 121, null);
         }
     }
 }
开发者ID:Petran15,项目名称:dbschemareader,代码行数:23,代码来源:ResultSetReader.cs

示例8:

 void DatabaseInfo.SetParameterType( DbParameter parameter, string dbTypeString )
 {
     var mySqlDbTypeProperty = parameter.GetType().GetProperty( "MySqlDbType" );
     mySqlDbTypeProperty.SetValue( parameter, Enum.Parse( factory.GetType().Assembly.GetType( "MySql.Data.MySqlClient.MySqlDbType" ), dbTypeString ), null );
 }
开发者ID:william-gross,项目名称:enterprise-web-library,代码行数:5,代码来源:MySqlInfo.cs


注:本文中的System.Data.Common.DbParameter.GetType方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。