溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

asp.net 反射的作用是什么

發(fā)布時間:2021-07-24 11:53:11 來源:億速云 閱讀:118 作者:chen 欄目:開發(fā)技術(shù)

這篇文章主要講解了“asp.net 反射的作用是什么”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“asp.net 反射的作用是什么”吧!

復(fù)制代碼 代碼如下:


public bool Add(Liuyan refmodel)
    {
        string sql = "insert into liuyan(name,phone,zhiwei,gongsi,addr,country,dianyou,content,adddate)values(@name,@phone,@zhiwei,@gongsi,@addr,@country,@dianyou,@content,@adddate)";
        OleDbParameter[] parameters ={
            new OleDbParameter("@name",OleDbType.VarChar),
            new OleDbParameter("@tel",OleDbType.VarChar),
            new OleDbParameter("@zhiwei",OleDbType.VarChar),
            new OleDbParameter("@gongsi",OleDbType.VarChar),
            new OleDbParameter("@addr",OleDbType.VarChar),
            new OleDbParameter("@country",OleDbType.VarChar),
            new OleDbParameter("@dianyou",OleDbType.VarChar),
            new OleDbParameter("@content",OleDbType.VarChar),
            new OleDbParameter("@adddate",OleDbType.VarChar)
        };
        parameters[0].Value=model.Xingming;
        parameters[1].Value=model.Tel;
        parameters[2].Value=model.Zhiwei;
        parameters[3].Value=model.Gongsi;
        parameters[4].Value=model.Addr;
        parameters[5].Value=model.Country;
        parameters[6].Value=model.Dianyou;
        parameters[7].Value=model.Content;
        parameters[8].Value=model.Adddate;
        return sqlHelper.executeCommand(sql, parameters);
    }
 


本文講反射 現(xiàn)在就說在這段代碼的哪個位置使用反射 只是本人編碼過程中為了省勁突發(fā)奇想

復(fù)制代碼 代碼如下:


   parameters[0].Value=model.Xingming;
        parameters[1].Value=model.Tel;
        parameters[2].Value=model.Zhiwei;
        parameters[3].Value=model.Gongsi;
        parameters[4].Value=model.Addr;
        parameters[5].Value=model.Country;
        parameters[6].Value=model.Dianyou;
        parameters[7].Value=model.Content;
        parameters[8].Value=model.Adddate;


  當(dāng)類里有很多屬性的時候上面這段代碼可以使用反射來賦值
  

 

復(fù)制代碼 代碼如下:

    
//使用反射記得引用using System.Reflection;命名空間

     Type t = refmodel.GetType();
       for (int i = 0; i < t.GetProperties().Length; i++)
        {
            parameters[i].Value= t.GetProperties()[i].GetValue(refmodel, null);
        }


這里使用反射來獲取類的所有屬性
然后遍歷屬性并把遍歷到的屬性值賦給參數(shù)
當(dāng)然這里是添加的方法沒有model.Id
所以for循環(huán)的時候要從1開始
然后 parameters[i].Value賦值的時候i要減一  parameters[i-1].Value
這樣以后寫數(shù)據(jù)層的時候給參數(shù)賦值就不用苦逼的一個一個復(fù)制粘貼了
怎么樣 個人小心得和大家分享
使用代碼生成工具的可以無視啦

感謝各位的閱讀,以上就是“asp.net 反射的作用是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對asp.net 反射的作用是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI