色女孩综合网_天天做天天添婷婷我也去 _日韩视频高清_草草影院免费

完善主體資料,免費贈送VIP會員!
* 主體類型
* 企業名稱
* 信用代碼
* 所在行業
* 企業規模
* 所在職位
* 姓名
* 所在行業
* 學歷
* 工作性質
請先選擇行業
您還可以選擇以下福利:
行業福利,領完即止!

下載app免費領取會員

NULL

ad.jpg

二次開發教程:Dapper里使用Attribute自定義映射關系

發布于:2019-07-24 16:32:10

網友投稿

更多

目的將book表中的id,name,price 映射到Book類中的Id1,Name1,Price1


    class Program

    {        

        static SQLiteConnection conn;

        static string dbStr = "test.db";

        static void Main(string[] args)

        {

            SqlMapper.SetTypeMap(typeof(Book), new CustomTypeMap<Book>());//定義映射規則

            SQLiteConnection.CreateFile(dbStr);

            conn = new SQLiteConnection($"Data Source={dbStr};Version=3;");

            string sql = "create table book (id int,name varchar(20), price double)";         

 

            conn.Execute(sql);

            sql = "insert into book values(@id1,@name1,@price1)";

            conn.Execute(sql, new Book());

 

            sql = "select * from book";

            var books = conn.Query<Book>(sql);

 

            Console.ReadLine();

        }

    }

 

    public class Book

    {

        [Column("name")]

        public string Name1 { get; set; }

        [Column("id")]

        public int Id1 { get; set; }

        [Column("price")]

        public double Price1 { get; set; }

    }

 

    public class CustomTypeMap<T> : SqlMapper.ITypeMap

    {

        public ConstructorInfo FindConstructor(string[] names, Type[] types)

        {

            return null;

        }

 

        public ConstructorInfo FindExplicitConstructor()

        {

            return typeof(Book).GetConstructor(new Type[0]);

        }

 

        public SqlMapper.IMemberMap GetConstructorParameter(ConstructorInfo constructor, string columnName)

        {

            return null;

        }

 

        public SqlMapper.IMemberMap GetMember(string columnName)

        {

            return new CustomMemberMap(columnName, _dict[columnName]);

        }

 

        private Dictionary<string, PropertyInfo> _dict = new Dictionary<string, PropertyInfo>();

        public CustomTypeMap()

        {

            Type type = typeof(T);

            var ps = type.GetProperties();

            foreach (var p in ps)

            {

                var at = p.GetCustomAttribute<ColumnAttribute>();

                if (at != null)

                {

                    if (!string.IsNullOrWhiteSpace(at.ColumnName))

                        _dict.Add(at.ColumnName, p);

                }

            }

        }

    }

    [AttributeUsage(AttributeTargets.Property)]

    public class ColumnAttribute : Attribute

    {

        public string ColumnName { get; }

        public ColumnAttribute(string columnName)

        {

            ColumnName = columnName;

        }

    }

 

    public class CustomMemberMap : SqlMapper.IMemberMap

    {

        public CustomMemberMap(string column,PropertyInfo propertyInfo)

        {

            ColumnName = column;

            Property = propertyInfo;

        }

        public string ColumnName { get; }

 

        public Type MemberType => Field?.FieldType ?? Property?.PropertyType ?? Parameter?.ParameterType;

 

        public PropertyInfo Property { get; }

 

        public FieldInfo Field { get; }

 

        public ParameterInfo Parameter { get; }

    }

本文版權歸腿腿教學網及原創作者所有,未經授權,謝絕轉載。

未標題-1.jpg

上一篇:二次開發教程:Hello entity framework

下一篇:二次開發教程:orm 里使用Emit

60acb4e0ef112.png
色女孩综合网_天天做天天添婷婷我也去 _日韩视频高清_草草影院免费

    9000px;">

      亚洲bt欧美bt精品| 亚洲精品亚洲人成人网| 亚洲精品成人天堂一二三| 99久久免费国产| 伊人色综合久久天天| 欧美亚洲动漫精品| 青草av.久久免费一区| www国产亚洲精品久久麻豆| 国产成人免费在线| 亚洲资源中文字幕| 2020日本不卡一区二区视频| 波多野结衣亚洲| 免费观看成人鲁鲁鲁鲁鲁视频| 久久精品一二三| 99re在线精品| 开心九九激情九九欧美日韩精美视频电影 | 午夜日韩在线观看| 精品国产91九色蝌蚪| 色屁屁一区二区| 黑人精品欧美一区二区蜜桃 | 亚洲精品中文在线观看| 欧美一区二区三区精品| 成人自拍视频在线| 精品在线亚洲视频| 亚洲成人动漫av| 国产精品久久99| 久久日韩精品一区二区五区| 欧美视频一区在线| 99精品一区二区三区| 韩国av一区二区三区在线观看| 亚洲精品成人少妇| 国产欧美va欧美不卡在线| 日韩欧美一区二区免费| 欧美日韩电影一区| 色丁香久综合在线久综合在线观看| 国产一区二区三区视频在线播放| 亚洲bt欧美bt精品777| 亚洲一区二区三区在线| 中文字幕欧美一| 中文字幕成人网| 久久婷婷久久一区二区三区| 欧美成人精品高清在线播放| 欧美精品777| 欧美色倩网站大全免费| 色一区在线观看| 91在线观看视频| 成人av电影免费观看| 国产精品1区二区.| 国产不卡免费视频| 国内成人免费视频| 国产麻豆成人精品| 国产一区二区久久| 丁香啪啪综合成人亚洲小说| 不卡免费追剧大全电视剧网站| 国产91精品一区二区麻豆亚洲| 国产精品1区二区.| 99国产精品久| 91麻豆成人久久精品二区三区| 色婷婷综合久色| 欧美日韩另类国产亚洲欧美一级| 欧美伊人久久大香线蕉综合69| 欧美体内she精高潮| 91精品国产免费| 久久久综合网站| 国产精品久久久久久久久免费相片| 一区在线播放视频| 一区二区三区精品在线观看| 亚洲中国最大av网站| 天堂va蜜桃一区二区三区| 无吗不卡中文字幕| 国产精品69毛片高清亚洲| 99久久婷婷国产综合精品电影| 在线一区二区视频| 欧美一级免费大片| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 日韩二区三区在线观看| 久久99精品久久久久久国产越南| 国产在线视频不卡二| av成人动漫在线观看| 在线欧美日韩国产| 精品久久久久久久久久久久久久久久久 | 国产欧美一区视频| 一区二区成人在线观看| 久久成人免费日本黄色| 99久久综合精品| 日韩一区二区三| 亚洲国产精品激情在线观看| 香蕉成人伊视频在线观看| 黄色资源网久久资源365| 日本韩国精品一区二区在线观看| 制服丝袜日韩国产| 亚洲少妇最新在线视频| 精品一区二区精品| 欧美日韩一二三| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 在线免费亚洲电影| 国产亚洲一区字幕| 奇米888四色在线精品| 色老头久久综合| 国产欧美视频一区二区三区| 日韩高清欧美激情| 色婷婷av久久久久久久| 国产视频一区不卡| 国产一区二区在线观看免费| 欧美精品在线视频| 亚洲一区二区三区四区在线观看| 成人一级片网址| 久久亚洲欧美国产精品乐播| 性久久久久久久久久久久| 成人久久视频在线观看| 精品久久久久久久久久久久久久久久久 | 成人黄色在线网站| 日韩一区二区三区视频在线观看| 亚洲精选免费视频| 色综合中文字幕国产 | 精品国产一区久久| 日韩电影在线一区二区三区| 色诱视频网站一区| 亚洲激情在线播放| 一本久道中文字幕精品亚洲嫩| 欧美国产日本韩| 国产高清精品网站| 国产偷v国产偷v亚洲高清| 蓝色福利精品导航| 久久综合国产精品| 国产麻豆精品视频| 国产女主播一区| 成人激情视频网站| 日韩理论片中文av| 日本韩国一区二区三区| 一区二区三区日本| 欧美日韩你懂得| 奇米色一区二区三区四区| 欧美va天堂va视频va在线| 精品制服美女久久| 中文欧美字幕免费| 色综合久久99| 婷婷综合五月天| 日韩精品一区二| 国产成人精品影视| 1区2区3区国产精品| 欧美中文一区二区三区| 日韩精品电影在线| 久久久影视传媒| av影院午夜一区| 日韩高清一区在线| 欧美经典三级视频一区二区三区| 99精品视频一区二区三区| 亚洲一卡二卡三卡四卡无卡久久| 在线电影一区二区三区| 国产成人在线电影| 亚洲综合激情网| 精品国精品国产尤物美女| 不卡一区二区中文字幕| 偷拍一区二区三区四区| 国产精品人人做人人爽人人添| 日本韩国精品一区二区在线观看| 午夜精品在线视频一区| 久久久久国产精品麻豆| 日本久久电影网| 国产精品资源网站| 亚洲最大成人网4388xx| 精品久久久久久无| 欧美午夜寂寞影院| 国产精品99久久久久久宅男| 亚洲1区2区3区视频| 国产精品免费视频一区| 欧美刺激午夜性久久久久久久| jlzzjlzz国产精品久久| 久久99在线观看| 亚洲成人在线观看视频| 国产精品国产三级国产三级人妇| 91精品国产综合久久福利软件| 99在线精品免费| 久久不见久久见免费视频1| 亚洲欧美色图小说| 国产三级精品视频| 欧美大黄免费观看| 6080日韩午夜伦伦午夜伦| 91免费视频观看| 成人高清视频免费观看| 国产尤物一区二区在线| 免费在线观看成人| 午夜精品在线视频一区| 一区二区三区在线免费视频 | 国产盗摄视频一区二区三区| 亚洲chinese男男1069| 亚洲欧美韩国综合色| 欧美激情一区二区三区蜜桃视频| 777奇米四色成人影色区| 欧美色综合网站| 欧美在线看片a免费观看| 91麻豆国产精品久久| 97se亚洲国产综合自在线观| 成人激情动漫在线观看| 成人高清视频在线观看| av电影天堂一区二区在线观看| www.亚洲色图.com| 成人污污视频在线观看| 成人av免费网站|