最近在做一些OM Mapping的准备工作,新学了一招。

如果要将System.Data.Dbtype转换为System.Data.SqlDbType,以前以为要写Switch Case语句。其实有很简单的方法:

        private System.Data.SqlDbType ConvertToSqlDbType(System.Data.DbType pSourceType)
        {
            SqlParameter paraConver = new SqlParameter();
            paraConver.DbType = pSourceType ;
            return paraConver.SqlDbType;
        }

微软为你做好了转换。在SqlParameter 中你改变了其中一个就自动改变了另外一个。

 

你也可以做一个自动生成mapping的方法,你想怎么映射就怎么映射,同理也可以对应oracle的类型

 

        [TestMethod]

public void BuildDbTypeToSqlDbType()

{

 

    var dbTypeFields =

    Enum.GetValues(typeof(DbType));

 

    foreach (DbType dbTypeField in dbTypeFields)

    {

        SqlParameter p = new SqlParameter();

       
 

        try

        {

            p.DbType = dbTypeField;

            Console.WriteLine("DbType." + dbTypeField.ToString() + " =\t SqlDbType." + p.SqlDbType);

        }

        catch (Exception)

        {

            Console.WriteLine("// DbType." + dbTypeField.ToString() + " =\t unknown");

        }

    }

 

}

 

[TestMethod]

public void BuildSqlDbTypeToDbType()

{

 

    var dbTypeFields =

    Enum.GetValues(typeof(SqlDbType));

 

    foreach (SqlDbType sqldbtype in dbTypeFields)

    {

        SqlParameter p = new SqlParameter();

 

        try

        {

            p.SqlDbType = sqldbtype;

            Console.WriteLine("SqlDbType." + sqldbtype + " =\t DbType." + p.DbType);

        }

        catch (Exception)

        {

            Console.WriteLine("// SqlDbType." + sqldbtype.ToString() + " =\t unknown");

        }

 

    }

 

}

System.Data.Dbtype转换为System.Data.SqlDbType的更多相关文章

  1. system.img镜像转换为system.new.dat + system.transfer.list

    android 8.1上面验证,支持所有的android版本,直接放到sdk中执行即可.   img2sdat.py #!/usr/bin/env python #coding=utf-8   imp ...

  2. System.Data.DbType 与其它DbType的映射关系

    System.Data.DbType 与其它DbType的映射关系 有如下类型的映射对照: System.Data.SqlClient.SqlDbType System.Data.OleDb.OleD ...

  3. System.Data.DbType和数据库映射关系

    有如下类型的映射对照: System.Data.SqlClient.SqlDbType  System.Data.OleDb.OleDbType System.Data.Odbc.OdbcType S ...

  4. System.Data.DbType映射关系

    有如下类型的映射对照: System.Data.SqlClient.SqlDbType  System.Data.OleDb.OleDbType System.Data.Odbc.OdbcType S ...

  5. System.Data.DbType与各类数据库的数据类型的映射关系

    有如下类型的映射对照: System.Data.SqlClient.SqlDbType System.Data.OleDb.OleDbType System.Data.Odbc.OdbcType Sy ...

  6. 报错:无法将类型"System.Data.EntityState"隐式转换为"System.Data.Entity.EntityState"

    报错:无法将类型"System.Data.EntityState"隐式转换为"System.Data.Entity.EntityState".   出错语句停留 ...

  7. 错误描述:请求“System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”类型的权限已失败

    错误描述:请求“System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, Pu ...

  8. (C# Debug)A first chance exception of type 'System.ArgumentException' occurred in System.Data.dll

    Debug 模式下运行程序的时候,Output 窗口出来个错误“A first chance exception of type 'System.ArgumentException' occurred ...

  9. 5 Ways to Use Log Data to Analyze System Performance--reference

    Recently we looked across some of the most common behaviors that our community of 25,000 users looke ...

随机推荐

  1. Qt 添加资源文件

    *本人乃小白,博文主要用于个人记录,不保证内容准确无误* 我们编写的gui可能需要一些额外的资源(比如贴图用的图片),可用资源文件统一管理.以下以图片为例. 用qt creator 打开工程,为工程新 ...

  2. php高级面试题知识点(转载)

    php高级面试题知识点大全 时间:2016-01-26 06:36:22来源:网络 导读:php高级面试题知识点大全,本套面试题内容包括php魔术方法.php单点登录.linux基本命令.前端开发技术 ...

  3. SimpleDateFormatter Java中的用法

    转载 http://www.cnblogs.com/jayzee/p/3171195.html 有一点需要补充的是,SimpleDateFormatter是有时制的 如果hh:mm,则选用的是12小时 ...

  4. NopCommerce 开源商城下载配置安装

    NopCommerce 是一款开源商城系统,提供了完整的解决方案.应该来说是目前最完善,功能最强劲的商城系统.基于ASP.NET MVC 框架,EF框架,数据库MSSQL. 系统版本涵盖了从MVC3. ...

  5. 疯狂的ASP.NET系列-第一篇:啥是ASP.NET

    最近想学下ASP.NET,于是在网店上看到一本书叫做ASP.NET高级程序设计,老婆在旁边问了句:“这个不是DSP(数字信号处理,大学读的电子,所以这个比较熟),是ASP啊,什么是ASP啊?”.我想了 ...

  6. [IR] Compression

    关系:Vocabulary vs. collection size Heaps’ law: M = kTbM is the size of the vocabulary, T is the numbe ...

  7. 【转载】Linux i386+源码中常见宏标识tag的定义

    转载自:http://blog.chinaunix.net/uid-20729583-id-1884553.html 这 些宏包括 __init.__initdata.__initfunc().asm ...

  8. ASP.NET MVC3 在_ViewStart設定Layout後用RenderAction的注意事項

    ASP.NET MVC3 在_ViewStart設定Layout後用RenderAction的注意事項 3/24 TW MVC第一次活動圓滿的結束了,雖然是RC,但也來了不少願意聽我們分享的好朋友. ...

  9. LeetCode——Jump Game II

    Description: Given an array of non-negative integers, you are initially positioned at the first inde ...

  10. [New Portal]Windows Azure Virtual Machine (10) 自定义Windows Azure Virtual Machine模板

    <Windows Azure Platform 系列文章目录> 通过之前的文章,我相信大家对微软Windows Azure Virtual Machine有一定的了解了. 虽然微软提供了非 ...