日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

你必须懂的 T4 模板:深入浅出

發布時間:2023/12/1 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 你必须懂的 T4 模板:深入浅出 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

示例代碼:示例代碼__你必須懂的T4模板:淺入深出.rar

?

(一)什么是T4模板?

T4,即4個T開頭的英文字母組合:Text Template Transformation Toolkit。

T4文本模板,即一種自定義規則的代碼生成器。根據業務模型可生成任何形式的文本文件或供程序調用的字符串。(模型以適合于應用程序域的形式包含信息,并且可以在應用程序的生存期更改)

?

VS本身只提供一套基于T4引擎的代碼生成的執行環境,由下面程序集構成:

Microsoft.VisualStudio.TextTemplating.10.0.dll

Microsoft.VisualStudio.TextTemplating.Interfaces.10.0.dll

Microsoft.VisualStudio.TextTemplating.Modeling.10.0.dll

Microsoft.VisualStudio.TextTemplating.VSHost.10.0.dll

?

便利工具:

1、??T4Toolbox.msi(CodePlex上開源的工具)

a)?????????提供一些可以直接使用的代碼生成器,比如Enum SQL View、AzMan wrapper、LINQ to SQL classes、LINQ to SQL schema和Entity Framework DAL等。

b)?????????提供一些基于T4方面的VS的擴展:當你安裝之后,在“Add New Item”對話框中就會多出一個命名為“Code Generation”的類別,其中包括若干文件模板。

2、??T4?模板編輯器(eg:支持代碼著色、智能提示)

a)?????????tangible T4 Editor?(下載)

b)?????????Visual T4?(下載)

??? 當然我們也可以通過VS2010中新增的擴展管理器(Extension Manager)來添加Vs擴展插件。擴展管理器(Extension Manager),這和Eclipse/Netbeans有些相似,用戶可以直接在IDE中從Visual Studio 庫(Visual Studio Gallery)找到并下載擴展。通過VS的菜單Tools->Extension Manager,這里你可以添加,刪除已經安裝的VS的擴展插件。打開界面如下:

?

?

筆者在學習?T4?的時候使用過上面兩個?T4?模板編輯器。稍作幾點對比:

a)?????????tangible T4 Editor可選擇安裝內嵌的?UML?模板模型

???????

b)?????????對于不是常用的dll( eg:EnvDTE.dll ),tangible T4 Editor免費版和?Visual T4?都不支持導航,并且所報的提示頁不一樣

tangible T4 Editor免費版中提示如下:

?

?

Visual T4中則直接提示:

?

但是在?Visual T4?中,我們可以通過在程序集中引入?EnvDTE.dll?解決此錯誤的提示(完成開發后可移除程序集引用),并且還能完美的獲得該程序集的智能提示功能,如下圖所示:

?

?????????同時我們也可以看到?Visual T4?中代碼著色也更加貼近?VS?(藍色字體標注對象)。

小結:

  • 就“代碼著色”和“智能提示”方面Visual T4?工具表現更完美(前提是必須主動在項目中引入對應程序集),但目前最新版本存在縮進問題實在可惜,悲憤中等更新。.
  • 可能你還想要tangible T4 Editor提供的?UML?模板模型,呵呵……現在我本機同時裝了這兩款?T4編輯器,暫時還沒發現沖突。
  • ?

    (二)T4基本結構

    T4模板可以分為:指令塊、文本塊、控制塊。

  • 指令塊?-?向文本模板化引擎提供關于如何生成轉換代碼和輸出文件的一般指令。
  • 文本塊?-?直接復制到輸出的內容。
  • 控制塊?-?向文本插入可變值并控制文本的條件或重復部件的程序代碼,不能在控制塊中嵌套控制塊。
  • n??指令塊

    6個指令<#@ template #>、<#@ parameter#>、<#@ assembly #>、<#@ import #>、<#@ include #>、<#@ output #>、

    其中,?output?和?assembly?只能用在設計時模板。

    1)?????????T4?模板指令

    <#@ template [language="C#"] [hostspecific="true"] [debug="true"] [culture="code"] [inherits="templateBaseClass"]?[compilerOptions="options"]?#>

    這里只說明下?inherits?屬性,其余屬性在本文更合適的地方有進行說明。

    inherits?????????????

    指定模板的程序代碼繼承自另一個類,該基類可以是由其他模板生成。

    1)?????????運行時(預處理過的)文本模板中的繼承

    如果不指定?inherits?特性,則會從您的文本模板生成基類和派生類。指定?inherits?特性時,僅生成派生類。

    2)?????????設計時文本模板中的繼承

    設計時模板會生成任何類型的“文本文件”,此文件將組成?Visual Studio?項目的一部分。T4?模板引擎首先要將模板轉換為中間程序代碼文件,中間代碼文件將寫入您的?%TEMP% (環境變量)目錄。默認該生成的中間代碼繼承自?Microsoft.VisualStudio.TextTemplating.TextTransformation?類,但你也可根據需求使用?inherits?特性指定派生于?TextTransformation?類的任何基類。

    ???????????????????模板引擎生成轉換類更詳細的請參考本文后面的?何時編譯,編譯過程??節。

    ?

    2)?????????T4?參數指令

    <#@ parameter type="Full.TypeName" name="ParameterName" #>

    在?Visual Studio?文本模板中,parameter?指令聲明模板代碼中從自外部上下文傳入的值初始化的屬性。可以聲明任何遠程類型的參數。也就是說,類型必須使用SerializableAttribute進行聲明,或者必須從MarshalByRefObject派生。這樣可以將參數值傳遞到在其中處理模板的AppDomain中。

    如何使用及內部運作機制請查看我的另一篇文章?《(譯)理解?T4?模板:<#@ parameter #>?指令》?。

    ?

    3)?????????T4?導入指令

    <#@ import namespace="namespace" #>

    ?

    4)?????????T4?包含指令

    <#@ include file="filePath" #>

    a)?????????為了增加代碼的可維護性,將公用函數做為類功能塊(<#+?類功能控制塊?#>)存放在單獨的文件中,該文件可以被?<#@include#>?到一個或多個模板文件中。

    b)?????????對于包含文件,文件擴展名使用?.ttinclude可讀性更好。(以區分后綴為?.tt的運行時或設計時文本模板)

    ?

    5)?????????T4?輸出指令

    <#@ output extension=".fileNameExtension" [encoding="encoding"] #>

    運行時(預處理)文本模板中不需要?output?指令。應用程序通過調用TextTransform()?來獲取已生成的字符串。

    ?

    6)?????????T4?程序集指令

    <#@ assembly name="[assembly strong name|assembly file name]" #>

    在預處理文本模板中,assembly?指令無效。改為在?Visual Studio?項目中直接“添加引用”。

    程序集名稱應為以下各項之一:

  • GAC?中程序集的強名稱,例如?System.Xml.dll。還可以使用長名稱,例如?name="System.Xml, Version=4.0.0.0, Culture=neutral,PublicKeyToken=b77……"。
  • 程序集的絕對路徑
  • 可以使用?$(variableName)?語法引用?Visual Studio?或MSBuild變量(如?$(SolutionDir)),以及使用?%VariableName%?來引用環境變量。

    ???????????????????另,給出一些常用的?【生成命令和屬性的宏】

    $(ConfigurationName)

    當前項目配置的名稱(如“Debug”)。

    $(PlatformName)

    當前項目平臺的名稱(如“Win32”)。

    $(ProjectName)

    項目的基本名稱。

    $(TargetDir)

    生成的主輸出文件的目錄(定義為驅動器?+?路徑);包括尾部的反斜杠“\”。

    $(TargetName)

    生成的主輸出文件的基本名稱。

    $(FrameworkDir)

    安裝?.NET Framework?的目錄。

    $(FrameworkVersion)

    Visual Studio?使用的?.NET Framework?版本。

    $(WebDeployPath)

    從?Web?部署根到項目輸出所屬于的位置的相對路徑。返回與RelativePath相同的值。

    $(WebDeployRoot)

    指向<localhost>位置的絕對路徑。例如,c:\inetpub\wwwroot。

    ?

    n??控制塊

    有三種類型的控制塊,根據其左括號對它們進行區分:

    1.??????<#?標準控制塊?#>????????????????????????????可以包含語句。

    2.??????<#=?表達式控制塊?#>????????????將一個可以計算為字符串的表達式括起來,用于提供要寫入“輸出”文件的字符串的代碼。

    3.??????<#+?類功能控制塊?#>????????????可以使用類功能控制塊向文本模板添加方法、屬性、字段甚至是嵌套類。必須作為文件中的最后一個塊顯示,或者用<#@ include #>引入外部文件。

    注意:

    1)?????????始終使用?{...}花括號來包含內嵌的嵌套語句,否則會報錯。(哪怕花括號中只有一句代碼)

    2)?????????控制塊不能互相嵌套。必須先終止之前的控制塊,然后才能打開另一個。

    ?

    (三)設計時模板和運行時模板

    T4文本模板分為:設計時模板和運行時模板

    n??添加模板

  • 設計時模板(文本模板)
  • 優勢:當需求變化時,可以根據業務需求調整模型(輸入),按照指定規則將“模型”生成任何類型的“文本文件”,例如:網頁、資源文件或任何語言的程序源代碼。(模型:是描述應用程序特定方面的數據源。它可以是任何形式、任何類型的文件或數據庫。如:數據庫、配置文件、UML?模型、DSL?模型或其他源)

    a)?????????VS中新建文件——常規——文本模板。(如圖)

    ?

    該模板文件中已包含下列指令:

    <#@ template debug="false" hostspecific="false" language="C#" #>

    <#@ output extension=".txt" #>

    b)?????????或則,添加“純文本文件”并設置下圖屬性,加入相關指令。(后綴推薦改為標準的?*.tt)

    設計時模板: TextTemplatingFileGenerator

    ?

  • 運行時模板(已預處理的文本模板)???
  • 優勢:當需求變化時,可以根據業務需求調整模型(輸入),在運行時按照指定規則將“模型”生成為“文本字符串”。

  • VS中新建文件——常規——已預處理的文本模板。
  • 該模板文件包含指令:<#@ template language="C#" #>

  • 或則,添加“純文本文件”并設置相應屬性,加入相關指令。
  • 運行時模板:TextTemplatingFilePreprocessor

    ?

    n??何時編譯,編譯過程

  • 何時編譯
  • 在下列任何一種情況下,將執行模板,同時生成附屬文件,生成的文件將作為項目的一部分編譯。(屬性框----生成操作:編譯)

    1)?????????編輯模板(模板有異動且沒有被保存),當前編輯模板失去焦點。

    2)?????????保存模板。

    3)?????????在“解決方案資源管理器”工具欄中單擊“轉換所有模板”。轉換解決方案中的所有模板。

    ??????

    4)?????????右擊“解決方案資源管理器”中的一個或多個模板文件,然后選擇“運行自定義工具”。

  • 編譯過程
  • 設計時模板

    1)?????????文本模板轉換引擎將“文本模板”轉換為可執行的cs代碼——“轉換類”。轉換類(*.cs)存于臨時目錄下。(臨時目錄在“環境變量”中設置:右鍵“我的電腦”—“屬性”—“高級系統設置”—“高級”選項卡中“環境變量”—TEMP變量)

    命名空間:Microsoft.VisualStudio.TextTemplating +?隨機碼

    基類:Microsoft.VisualStudio.TextTemplating.TextTransformation

    類名:GeneratedTextTransformation

    ?

    2)?????????引擎編譯生成的“轉換類”生成dll,dll存于臨時目錄下。具體是哪個dll可以在模板的“調試環境”下使用System.Reflection.Assembly.GetExecutingAssembly();獲取。

    3)?????????執行已編譯的轉換類,生成“文件”。新文件會在“解決方案資源管理器”中出現在文本模板文件下。

    ?

    運行時模板

    1)?????????運行時模板沒有<#@ output #>指令,文本模板引擎將“運行時模板”直接編譯為cs文件,作為項目的一部分編譯。新文件會在“解決方案資源管理器”中出現在文本模板文件下。

    命名空間:默認為所屬程序集的命名空間

    基類:模板文件名?+ Base?

    類名:模板文件名(PreTextTemplateTest.tt)——注意是“分部類”

    ?

    2)?????????生成的代碼文件隨著項目一起編譯,并可在應用程序中通過調用生成類中的TransformText()?方法輸出“文本字符串”。

    ?

    另外,若要在特定命名空間中放置模板轉換生成的類,需設置模板文件的“自定義工具命名空間”屬性。

    ?

  • 注意事項
  • 1)?????????控制塊使用陷進

    TransformText()?方法是由模板引擎將模板中的所有“控制塊”代碼(包括“包含的模板”)組合生成。所以在使用控制塊時應注意以下幾點:

    a)?????????語言:只能使用一種語言。

    b)?????????局部變量:確保局部變量的名稱不會沖突。

    2)?????????文本模板在單獨的AppDomain中運行

    請注意,文本模板在與主應用程序分開的AppDomain中運行。在大多數情況下這并不重要,但在某些復雜的情況下您可能會發現一些限制。例如,如果要從單獨的服務將數據傳入模板或從中傳出數據,則該服務必須提供可序列化的?API。

    ?

    (四)技巧

    l??快速編寫模板

    以生成文件為原型,然后逐步插入用于改變結果的控制塊。

    ?

    l??T4文本模板的斷點調試

  • 注冊表:設置DbgJITDebugLaunchSetting值為?2。
  • (x86系統): HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework

    (x64?系統): HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework

  • 為template指令添加debug="true"特性:<#@ template debug="true"#>
  • 命令:
  • <# System.Diagnostics.Debugger.Launch();#>??????????????????在模板執行到特定點啟動調試器。如果用Debugger.Break()啟動調試器在調試完后會導致?VS?奔潰。

    <#System.Diagnostics.Debugger.Break();#>?????????????????????啟動調試器后,使用此命令在后續特定點處再次進入調試模式,相當于斷點。

    使用方法:必須使用“Debugger.Launch()”命令啟動調試器(如下圖,啟動新實例或使用已存在的VS附加。注意,若此處點擊取消則將關閉當前IDE),調試完后可以不用中斷調試,不影響模板編輯,當再次編譯模板時如果存在“Debugger.Break()”命令則自動進入調試模式。

    ?

    ?

    l??向模板傳遞參數的兩種方法

  • 使用?<#@ parameter#>?指令引入參數,由模板引擎生成屬性訪問代碼。詳細請看?《(譯)理解?T4?模板:<#@ parameter #>?指令》?。
  • 在構造函數中傳遞參數。只適用于運行時模板,此種模板生成的代碼以分部類的形式編寫。可以在項目的另一個文件中創建同一個類的其他部分,該文件可以包含一個帶參數的構造函數、若干屬性和函數,在調用?TransformText()?實例方法前進行初始化。
  • ?

    l??使用模板繼承共享內容

    可以通過編寫基類模板(可以是抽象模板)在文本模板之間共享內容。使用<@#template#>?指令的?inherits?特性指定基類。

    ?

    l??運行時調用設計時模板返回字符串

    調用?Microsoft.VisualStudio.TextTemplating.Engine?的?ProcessTemplate?方法。

    publicstring?ProcessTemplate(

    ?????string?content,

    ?????ITextTemplatingEngineHost host

    )

    ????????content????參數指定文本模板的內容,eg: 使用System.IO.File.ReadAllText(Path)?進行讀取

    host????????參數指定的宿主,必須是實現?ITextTemplatingEngineHost?的類。這是由模板引擎回調的。宿主必須能記錄錯誤、解析對程序集和包含文件的引用、提供可在其中執行模板的應用程序域并為每條指令調用相應的處理器。

    ?

    演練:創建自定義文本模板宿主

    ?

    (五)常用方法

    n??模板基類提供的方法

    設計時模板繼承TextTransformation抽象類

    ?

    ?

    運行時模板默認繼承自動生成的基類

    ?

  • Write()?和WriteLine()?方法
  • 寫入目的輸出文本的三種方式:

    a)?????????文本塊

    b)?????????表達式控制塊:??????<#=?變量?#>

    c)?????????標準控制塊:???????????<# Write() | WriteLine() #>,因為控制塊不能嵌套,所以此種方式比<#=?變量?#>書寫更優雅。

  • 輸出文本縮進設置
  • 可以使用縮進方法設置文本模板輸出的格式。

    a)?????????PushIndent(string indent)?????????添加指定格式,內部會將字符長度加入到緩存變量indentLengths列表(List<int>)。

    b)?????????PopIndent()?????????????????以“堆棧(先進后出)”形式移除格式,內部按indentLengths列表中存的字符長度進行移除。

    c)?????????ClearIndent()??????????????刪除所有縮進。

    注意:格式用完后要注意清除,否則可能出現模板中的空行會生成?Write(“\r\n”)?中間代碼,最終造成將縮進的格式錯誤輸出到了目的文件。

    Eg:

    ?

  • 錯誤報告
  • 若要在?Visual Studio?錯誤窗口中放置錯誤消息和警告消息,可以使用以下方法:

    <# this.Error("An error message"); #>

    <# Warning("A warning message"); #>

    ?

    n??使用執行模板的主機(例如?Visual Studio)公開的方法和屬性。這適用于常規文本模板,而不是預處理過的文本模板。

    首先,給?template?指令添加hostspecific="true"?特性,以便使用this.Host對象。

    (Microsoft.VisualStudio.TextTemplating.ITextTemplatingEngineHost)接口提供方法

    ?

  • 使用this.Host.ResolvePath()從相對路徑名打開文件
  • 使用LogErrors()?顯示錯誤消息,如下圖:
  • ???????

  • 使用?Visual Studio?中提供的服務(加載EnvDTE.dll?)
  • EnvDTE是組件包裝?COM?程式庫,其中包含了?Visual Studio?核心?Automation?的物件及成員。

    引入?EnvDTE.dll?組件后應按下圖“屬性”進行設置:

    ?

    示例:

    <#@ assembly name="EnvDTE" #>

    <#

    IServiceProvider serviceProvider = (IServiceProvider)this.Host;

    EnvDTE.DTEdte = (EnvDTE.DTE) serviceProvider.GetService(typeof(EnvDTE.DTE));

    dte.Solution.SaveAs("C:\\backup_Solution");

    #>

    轉載于:https://www.cnblogs.com/TF12138/p/4191484.html

    創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

    以上是生活随笔為你收集整理的你必须懂的 T4 模板:深入浅出的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    国产乱对白刺激视频不卡 | 国产精品黄网站在线观看 | 久久久香蕉视频 | 少妇bbbb搡bbbb搡bbbb | 中文字幕精品视频 | 黄色毛片大全 | 亚洲一区二区视频在线 | 国产成人黄色在线 | 欧美精品乱码久久久久 | 亚洲首页| 综合在线色 | 日本超碰在线 | 亚洲三级国产 | 中文有码在线 | 黄色aaaaa| 亚洲理论片| 天堂网一区 | 久久在线精品 | 2017狠狠干 | 免费在线黄 | 久操视频在线免费看 | 久青草电影| 成人av资源在线 | av一区二区三区在线 | 久久久国产高清 | 欧美性粗大hdvideo | 国产91免费在线观看 | 日韩系列在线观看 | 91精品久久香蕉国产线看观看 | 在线免费观看麻豆 | 天天干.com| 中文字幕色网站 | 男女啪啪网站 | 夜夜操天天干 | 欧美国产三区 | 99精品偷拍视频一区二区三区 | 久久精品久久综合 | 日韩在线观看精品 | 日韩精品视频久久 | 91私密视频 | 色香天天 | 欧美成人精品在线 | 国产韩国精品一区二区三区 | 中文字幕一区二区三区在线播放 | 国内丰满少妇猛烈精品播放 | 日韩中文字幕第一页 | 亚洲闷骚少妇在线观看网站 | 亚洲欧美日韩一级 | 国产免费观看久久黄 | 午夜av激情 | 91污污视频在线观看 | 五月婷婷欧美视频 | 天天操天 | 丁香婷婷亚洲 | 丁香视频在线观看 | 91久久偷偷做嫩草影院 | 黄色在线观看网站 | 久久久久亚洲精品中文字幕 | 久久精品一区二区三区国产主播 | 中文字幕国产精品 | 亚洲视频在线免费观看 | 日批视频国产 | 波多野结依在线观看 | 奇米影视8888 | 久久色在线播放 | 日韩精品字幕 | 免费在线成人av电影 | 国产色一区 | 天天曰夜夜爽 | 国产伦精品一区二区三区… | 亚洲老妇xxxxxx | 草久在线观看视频 | 日韩免费av在线 | 人人人爽 | 国产99视频在线观看 | 97在线观看免费观看高清 | 狠狠干综合 | 国产91精品一区二区麻豆网站 | 91精品日韩 | 超碰九九 | 99视频在线观看视频 | 欧美性大胆 | 成人在线观看你懂的 | 国产一级二级视频 | av国产在线观看 | 亚洲伊人婷婷 | 天天草天天摸 | 国产一区二区在线免费观看 | 一区二区三区免费在线 | 96久久| 91亚洲精品乱码久久久久久蜜桃 | 午夜骚影 | 日韩中文字幕电影 | 玖玖玖国产精品 | 国产精品原创av片国产免费 | 久久久国产一区 | 国产精品久久久久国产a级 激情综合中文娱乐网 | 欧美一二三视频 | 中文字幕二区 | 特级西西444www高清大视频 | 国产精品网红福利 | 国产小视频免费在线观看 | 五月婷婷狠狠 | 国产精品免费在线播放 | 一区二区丝袜 | 五月激情六月丁香 | 国产999精品久久久影片官网 | 国产精品孕妇 | 欧美精品在线一区二区 | 亚洲清纯国产 | 免费三级a | 久久久久国产一区二区三区 | 久久,天天综合 | va视频在线| 91精品视频在线免费观看 | 在线免费黄色毛片 | 亚洲欧美视屏 | 综合激情婷婷 | 麻豆成人小视频 | 久久久精品免费观看 | 久久久黄视频 | 黄色大全在线观看 | 亚洲免费小视频 | 色资源在线观看 | 99视频在线观看一区三区 | 欧美激情va永久在线播放 | 久久尤物电影视频在线观看 | 97超碰精品 | 视频在线播放国产 | 久久婷婷色 | 精品免费视频123区 午夜久久成人 | 国产999精品视频 | 亚洲成aⅴ人在线观看 | 最新日韩视频 | 欧美日韩国产在线 | 日韩在线视频播放 | 国产一级二级三级在线观看 | 久久久久久久久久久免费视频 | 中文字幕之中文字幕 | 国产综合片 | 久久综合影院 | 日精品在线观看 | 国产自产在线视频 | 另类老妇性bbwbbw高清 | 国产精品久久久久久麻豆一区 | 精品久久精品 | 96视频免费在线观看 | 在线 你懂 | 中文在线天堂资源 | 久久国产一二区 | 久久久综合电影 | 免费视频你懂的 | 开心激情久久 | 午夜婷婷网| av中文在线观看 | 美女网站在线观看 | 亚洲狠狠丁香婷婷综合久久久 | 九草在线观看 | 五月天堂网 | 亚洲乱码中文字幕综合 | 91精品视频免费看 | 久久久久成 | 日韩在线视 | 国产 日韩 欧美 中文 在线播放 | 中文字幕在线看视频国产中文版 | 亚洲欧美视频一区二区三区 | 888av| 成人国产精品久久久久久亚洲 | 日本丶国产丶欧美色综合 | 精品视频99 | 狠狠色丁香婷婷综合最新地址 | 五月天堂网 | 激情五月婷婷激情 | 免费成人黄色av | 在线免费观看的av | 天天看天天干天天操 | 在线观看国产www | 欧美在线你懂的 | 99精品视频在线观看视频 | 日韩激情网 | 亚av在线| 中文资源在线官网 | 国产青草视频在线观看 | 日本精品免费看 | 国产亚洲成av片在线观看 | 精品国产一区二区三区男人吃奶 | 久久婷综合| 欧美日韩二区在线 | 97在线观看免费高清 | 最近最新mv字幕免费观看 | 免费看色的网站 | 久久日本视频 | 免费日韩电影 | 国产美女免费观看 | 久久免费99 | 久久久久久久久久久高潮一区二区 | 国产毛片久久久 | 五月激情五月激情 | 国产精品18久久久 | 欧美不卡在线 | 欧美视频网址 | 欧美激情综合网 | 美女视频免费一区二区 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 色婷婷精品大在线视频 | 激情av资源 | 91喷水 | 日本黄色免费大片 | 免费观看一级成人毛片 | 国产一区二区日本 | 91精品伦理 | 免费看一级特黄a大片 | 久久婷婷一区二区三区 | 99久久99视频只有精品 | 69国产精品视频 | 五月婷婷在线观看 | av中文字幕在线免费观看 | 亚洲一级国产 | 精品久久久久久久久久久院品网 | www.一区二区三区 | 日韩极品在线 | 东方av在线免费观看 | 国产色资源 | 久久综合9988久久爱 | 久久久激情视频 | 精品欧美一区二区精品久久 | 黄色在线免费观看网站 | 日日爽天天操 | h视频日本 | 欧美在线视频一区二区三区 | 黄色av电影网 | 久久精品一区 | 在线免费试看 | 在线国产小视频 | 四虎国产精品成人免费4hu | 亚洲免费一级 | 国产黄色在线网站 | 91精品麻豆 | 国产精品女 | 最新免费中文字幕 | 在线视频一二区 | 国产999精品| 天天操夜操视频 | 久久一区国产 | 激情深爱.com | 91精品国产欧美一区二区 | 亚洲精品国产综合99久久夜夜嗨 | 91麻豆产精品久久久久久 | 亚洲精品午夜视频 | 日韩欧美国产精品 | 亚洲aⅴ在线观看 | 在线观看精品国产 | 在线播放亚洲 | 国产18精品乱码免费看 | 国产一级免费视频 | 欧美一区免费观看 | 丁香综合 | 日韩精品第1页 | 久久激情小说 | 三级av在线免费观看 | 最近中文字幕国语免费高清6 | 日韩欧美一区二区在线观看 | 久久综合国产伦精品免费 | 久久久黄色免费网站 | 色综合久久五月天 | 麻豆传媒视频在线免费观看 | 国产精品s色 | 国产精品日韩久久久久 | 国产99精品在线观看 | 欧美一二三视频 | 色妞色视频一区二区三区四区 | 久久国产免费 | 在线国产专区 | 亚洲一区免费在线 | 久久亚洲二区 | 日日噜噜噜噜夜夜爽亚洲精品 | 欧美日韩高清在线 | 激情深爱| 日本黄色免费在线观看 | 91欧美在线| 日韩sese| 九九视频这里只有精品 | 成人免费ⅴa | 日本中文乱码卡一卡二新区 | 国产在线视频不卡 | 国产手机在线视频 | 日韩高清久久 | 在线观看黄色小视频 | 麻豆网站免费观看 | 97超碰人人澡 | 久久精品99久久久久久 | 久久人人看 | 亚州欧美视频 | 国产精品久久9 | 中文字幕在线观看91 | 日韩精品专区在线影院重磅 | 人人干人人搞 | 国产中文字幕免费 | 久久久精品视频成人 | 亚洲精品黄 | 日韩在线观看视频免费 | 欧美日本不卡视频 | 麻豆一区在线观看 | 精品国产一区二区三区av性色 | 最新一区二区三区 | 激情大尺度视频 | 久久香蕉电影 | 小草av在线播放 | 日韩三级视频在线观看 | 欧美 日韩 国产 中文字幕 | 日韩精品播放 | 99热精品久久 | 成年人电影免费看 | 岛国精品一区二区 | 日韩黄色在线电影 | 香蕉视频在线网站 | 午夜国产在线 | 天天操天天草 | 日本黄色免费在线观看 | 天天操操 | 五月综合婷 | 丁香婷婷综合五月 | 日韩中文字幕在线观看 | 精品美女在线视频 | 久久久福利视频 | 国产精品亚州 | 成人av高清在线观看 | 人人澡人人舔 | 午夜精品久久久久久久爽 | 久久久久久久久久久黄色 | 99精品在线免费 | 99视频网站 | 亚洲每日更新 | 欧美精品国产精品 | 人人爽人人爽人人片av | 久久午夜视频 | 亚洲高清激情 | 特级xxxxx欧美 | www色婷婷com| 91亚洲精品久久久中文字幕 | 91人人干 | 99精品久久久久 | 成年人app网址| 久久综合给合久久狠狠色 | 狠狠五月天 | 国产成人精品亚洲日本在线观看 | 国产免费午夜 | 精品视频免费久久久看 | 久久免费影院 | a极黄色片 | 久久不见久久见免费影院 | 九色精品免费永久在线 | av电影中文 | 国产精品免费久久久久影院仙踪林 | 久久综合免费视频影院 | 天天插日日操 | 日韩乱色精品一区二区 | av怡红院| 婷婷中文字幕在线观看 | 少妇bbw搡bbbb搡bbbb | 高清视频一区 | 中文字幕永久免费 | 国产成人一区二区三区 | 天天天天天天操 | 九九99| 韩国av一区二区三区在线观看 | 91精品专区 | 欧美色精品天天在线观看视频 | 国产精品国产自产拍高清av | 久久乐九色婷婷综合色狠狠182 | 在线观看免费成人 | 久久乱码卡一卡2卡三卡四 五月婷婷久 | 五月婷婷天堂 | 九九九视频精品 | 色综合天天综合 | 久久综合国产伦精品免费 | 日韩av免费一区 | 亚洲国产成人精品在线 | 夜又临在线观看 | 国产黄在线播放 | 精品视频在线观看 | 久久6精品 | 国内精品视频在线 | 色多多在线观看 | 在线免费观看av网站 | 欧美日韩久久不卡 | 国产成人一区二区三区 | 婷婷综合电影 | 久久a级片| 免费在线观看午夜视频 | 婷婷久久五月天 | www.com久久久 | 国产成人一区二区精品非洲 | 精品国产自在精品国产精野外直播 | 精品国产1区 | 99这里精品 | 精品一区二区三区久久 | 91精品成人| 精品久久一区二区 | 中文字幕日韩国产 | 日日夜夜综合 | 天天爱天天操天天干 | 久久久久久久毛片 | 日韩毛片在线播放 | 国产一级91 | 国产亚洲成人网 | 国产精品久久久久久久久久不蜜月 | 欧美污污网站 | 国产精品a成v人在线播放 | 成人av电影免费在线观看 | 丁香六月在线 | 久久精品国产亚洲精品 | 久久综合九色综合久久久精品综合 | 国产96精品 | 国产小视频在线看 | 中文日韩在线视频 | 色综合天天视频在线观看 | 亚洲五月六月 | 色综合天天爱 | 久久激情网站 | 日韩中文字幕在线观看 | 成人在线视频网 | 久久久免费精品国产一区二区 | 国产精品va | 精品一区欧美 | 98精品国产自产在线观看 | www.成人精品| 精品一区免费 | 日韩激情视频 | 亚洲另类在线视频 | 久久无码av一区二区三区电影网 | 久久福利 | 国内少妇自拍视频一区 | 亚洲有 在线 | 日韩在线观看小视频 | 婷婷色在线观看 | 人人爽人人做 | 手机看片国产日韩 | 五月在线| 日批网站在线观看 | 国产精品视频在线观看 | 国产香蕉在线 | 激情五月色播五月 | 成人免费视频网站在线观看 | 在线观看激情av | 久久大片 | av中文字幕在线观看网站 | 91麻豆免费视频 | www.超碰97.com| 伊人狠狠操| 欧美日韩1区 | 久久伊人精品天天 | 久草在线视频网 | 成人在线视频免费看 | 伊人资源视频在线 | 日韩欧美视频一区二区 | 99久高清在线观看视频99精品热在线观看视频 | 九九色在线观看 | 中文字幕在线免费观看 | 国产无限资源在线观看 | 99在线看 | 欧美精品小视频 | 在线va视频 | 亚洲激情五月 | www夜夜| 色中色资源站 | 欧美黄色免费 | 久久综合五月天婷婷伊人 | 久久手机免费观看 | 日韩高清免费无专码区 | 日日碰狠狠躁久久躁综合网 | 成人97视频一区二区 | 国产不卡网站 | 久久视频在线 | 97精品国产91久久久久久 | 久久免费毛片 | 国产专区欧美专区 | 在线va网站 | 久久电影色 | 97在线超碰 | 黄色国产高清 | 国产毛片在线 | 中文字幕 国产专区 | 成人91免费视频 | www免费看 | 婷婷丁香久久五月婷婷 | 亚洲一区二区精品3399 | 国产精品私拍 | 三级黄在线 | 中文字幕精品久久 | 国产精品久久久一区二区三区网站 | 日精品| 亚州日韩中文字幕 | 国产精品免费久久久久影院仙踪林 | 精品久久1 | 欧美日韩观看 | 久草视频99 | 国产精品麻| 99精品久久久久久久 | 国产精品99久久久久久武松影视 | 成年人国产精品 | 精品一区二区免费 | 91在线影院 | 久久久国产视频 | 亚洲国产中文字幕在线观看 | 超碰免费久久 | 日韩在线视 | 色综合久久久 | av成人在线看 | 久久三级毛片 | 日本巨乳在线 | 最近中文字幕国语免费av | 五月天婷婷丁香花 | 国产美女被啪进深处喷白浆视频 | 成人午夜性影院 | 免费在线观看中文字幕 | 超碰97成人| 国产成人香蕉 | 在线观看日本韩国电影 | 91桃色视频| 五月婷婷激情综合 | 日韩特黄av | 超碰久热| 欧美精品一区二区免费 | 一区三区视频在线观看 | 久久看片| 狠狠亚洲 | 国产不卡免费 | 中文字幕在线观看国产 | a级国产乱理伦片在线观看 亚洲3级 | 在线导航av | 欧美做受高潮 | www.国产在线视频 | 色婷婷综合久久久久中文字幕1 | 成人综合日日夜夜 | 久久成年人网站 | 婷婷色五| a级国产乱理伦片在线播放 久久久久国产精品一区 | 亚洲综合激情网 | 成人av电影免费观看 | 国产精品淫 | 日韩在线免费观看视频 | 成 人 免费 黄 色 视频 | 婷婷久久精品 | 中文高清av | 日韩中文字幕亚洲一区二区va在线 | 99久久婷婷国产综合亚洲 | 丝袜+亚洲+另类+欧美+变态 | 日本久久精 | 日韩精品免费在线观看视频 | 日韩美女免费线视频 | www最近高清中文国语在线观看 | 久久久久久黄色 | 日韩三级视频在线观看 | 天天玩夜夜操 | 国产午夜激情视频 | 国产精品久久精品国产 | 亚洲成熟女人毛片在线 | 看国产黄色片 | 操夜夜操 | 久久精品视频在线观看免费 | 国内精品久久久精品电影院 | 一级a性色生活片久久毛片波多野 | 亚洲国产午夜精品 | 日韩欧美精品在线 | 亚洲欧美日韩国产一区二区 | 成人国产精品一区 | 欧美日韩二区三区 | 日韩黄色免费电影 | 99免费精品| 国产精品女视频 | 91精品人成在线观看 | 亚洲 欧美 综合 在线 精品 | 久久精品欧美一区 | 在线中文字幕播放 | av在线电影免费观看 | 欧美日韩精品在线播放 | 久久热首页 | 又黄又爽又色无遮挡免费 | 国产一区二区久久久 | 最新av电影网址 | av电影在线观看完整版一区二区 | 992tv人人网tv亚洲精品 | 亚洲一区网 | 中文字幕亚洲综合久久五月天色无吗'' | 欧美精品首页 | 国产成人61精品免费看片 | 久久久久国产精品一区二区 | aaa日本高清在线播放免费观看 | 丁香婷婷综合激情 | 亚洲japanese制服美女 | 一级成人免费 | 日韩欧美精品免费 | 瑞典xxxx性hd极品 | 婷婷综合亚洲 | www.久久免费 | 欧美成人h版电影 | 天天爽夜夜爽精品视频婷婷 | 精品国产成人av | 欧美精品xxx | 久久精品一区二区国产 | 成人网444ppp| 中文字幕在线观看免费 | 亚洲美女免费精品视频在线观看 | 日韩久久在线 | 99精品热视频 | 欧美大片mv免费 | 成人小电影在线看 | 国产精品剧情在线亚洲 | 久久男人免费视频 | 97超级碰碰碰碰久久久久 | 色妞色视频一区二区三区四区 | 成人永久在线 | 亚洲无吗视频在线 | 香蕉视频在线免费 | 国内精品在线观看视频 | 成人性生爱a∨ | 国产一区二区不卡在线 | 国产96精品| 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 99色人 | 91在线精品观看 | av手机版 | 亚洲一区 影院 | 91精品第一页 | 欧美日韩精品在线一区二区 | 在线亚洲人成电影网站色www | 日韩欧美高清一区二区 | 国产少妇在线观看 | 98超碰人人 | 99热国内精品 | 日韩久久久久久久久 | 97在线观看免费 | 一区二区三区三区在线 | 久久久久久综合 | 特级西西www44高清大胆图片 | 免费看黄在线看 | 丁香六月天婷婷 | 免费在线观看成人av | 国产中文字幕精品 | av色一区 | 国产成人综合在线观看 | 午夜精选视频 | www.久久免费 | 99国产一区二区三精品乱码 | 日本性生活免费看 | 国产 精品 资源 | 一级久久精品 | 九九九热精品免费视频观看 | 日色在线视频 | 天天干天天摸天天操 | 国产亲近乱来精品 | 免费性网站 | 一区二区三区电影 | 国产成人久久精品77777 | 日本精品久久久一区二区三区 | 亚洲精品国产自产拍在线观看 | 九九久久久久久久久激情 | 91香蕉视频好色先生 | 黄色一级在线免费观看 | 热久久99这里有精品 | 亚洲永久精品一区 | 精品国产视频在线观看 | 91丨porny丨九色 | 久久这里只有精品1 | 国产 欧美 日产久久 | 亚洲欧美视频网站 | 国产精品国产三级国产不产一地 | 久久国产精品影视 | 韩日三级在线 | 三上悠亚一区二区在线观看 | 国产中文欧美日韩在线 | 久草在线中文888 | 一级片免费在线 | 天天综合狠狠精品 | www激情网 | 日韩欧美网址 | 免费观看性生活大片3 | 欧美日韩在线精品 | 国产成人精品午夜在线播放 | 久久精品综合 | 久久九九久久九九 | 午夜av在线免费 | 亚洲精品999 | 91精品国自产在线偷拍蜜桃 | 久久精品一区二区 | 免费日韩在线 | 国产h片在线观看 | 婷婷色中文字幕 | 99久久婷婷国产一区二区三区 | av中文字幕免费在线观看 | 高清视频一区二区三区 | 国产高清中文字幕 | 欧美一区二区精美视频 | 精品国产一区二区三区免费 | 日本动漫做毛片一区二区 | 五月天婷亚洲天综合网精品偷 | 成人精品在线 | 久久精品一二三 | 国产精品视频免费观看 | 免费一级片观看 | 中文字幕在线观看网址 | 美女久久久久久久 | 精品国产一区二区三区久久影院 | 精品美女视频 | 久久综合九色综合97_ 久久久 | 在线播放国产精品 | 欧美精品生活片 | 久久久久成人精品 | 96国产在线 | 最新av免费 | 99久久精品日本一区二区免费 | 久久国产精品久久国产精品 | h动漫中文字幕 | 久久一区二区三区日韩 | 国产免费嫩草影院 | 国产真实在线 | 午夜精品视频免费在线观看 | 91精品啪在线观看国产线免费 | 97色在线| 日本 在线 视频 中文 有码 | 国产破处视频在线播放 | 黄色免费国产 | 中文字幕在线第一页 | 亚洲资源 | 久久久免费毛片 | 日韩欧美高清免费 | 狠狠色丁香久久婷婷综合五月 | 日日色综合 | 96国产在线| 国产在线观看污片 | 97国产精品亚洲精品 | 中文字幕在线看 | 久久1区 | 国产成人一区二区三区电影 | 成人午夜剧场在线观看 | 成年人免费观看国产 | 99麻豆久久久国产精品免费 | 国产精品久久久久久一二三四五 | 国内久久看 | 精品国产成人av | 人人爽人人爽人人片av | 天天操月月操 | 黄色av播放| 欧美 亚洲 另类 激情 另类 | 国产高清视频在线观看 | 97视频免费观看 | 精品国产电影一区 | 亚洲一级理论片 | 亚洲在线国产 | 日韩理论电影在线 | 久久国产系列 | 首页av在线 | 在线视频 影院 | 亚洲性视频 | 天天操天天舔天天干 | 久久久网页 | 亚洲黄色在线观看 | 国产不卡在线观看 | 日韩欧美在线观看一区二区三区 | 九色91福利 | 黄色小网站在线观看 | 99热手机在线 | 日韩精品一区二区三区三炮视频 | 天天做日日爱夜夜爽 | 在线黄色观看 | 亚洲区另类春色综合小说校园片 | 亚洲高清视频在线观看 | 成人黄色电影免费观看 | 国产精品久久久久久久久费观看 | 国产91av视频在线观看 | 探花视频免费观看 | www.久久99| 青青河边草观看完整版高清 | 天天色天天操综合 | 最新成人av | 国产一级片在线播放 | 国产高清一 | 中文字幕在线看 | 国产视频在线观看免费 | 亚洲成人黄色网址 | 欧美 激情 国产 91 在线 | 欧美一级视频免费看 | 丁香激情视频 | 日日干夜夜草 | 一区二区三区四区五区在线 | 免费在线观看黄网站 | 亚欧日韩av | 天天干天天拍天天操 | 亚洲激情电影在线 | 国产精品原创av片国产免费 | 天天天干| av电影免费在线看 | 激情综合色综合久久 | 国产韩国精品一区二区三区 | 婷婷中文字幕综合 | 波多野结衣视频一区二区 | 丰满少妇高潮在线观看 | 久久精品国产一区二区电影 | 日日婷婷夜日日天干 | 日韩精品一区二区三区三炮视频 | 亚洲欧美在线综合 | 久久久久一区二区三区四区 | 中文字幕视频三区 | 操操操com| 在线观看av小说 | 在线观看黄色小视频 | 免费看片黄色 | 国产欧美精品一区二区三区四区 | 亚洲精品乱码久久久久 | 99自拍视频在线观看 | 日韩久久激情 | 亚洲经典视频 | 国产精品一区二区av麻豆 | 日日爱网站 | 波多野结衣电影一区二区 | 亚洲视频 视频在线 | 日韩三级视频 | 一本到视频在线观看 | 欧美一二三区在线观看 | 亚洲精品乱码久久久久久久久久 | 欧美精品一区二区免费 | 96av在线| 免费a视频 | 亚洲欧洲一级 | 开心丁香婷婷深爱五月 | 91资源在线| 96久久久 | 日韩欧美一区二区三区视频 | 在线视频在线观看 | 国产91影视 | 国产精品久久在线观看 | 久久 在线 | 成 人 黄 色 片 在线播放 | 涩涩色亚洲一区 | 成人h在线观看 | 天天操天天操天天操天天 | 美女视频黄在线 | 国产精品1区2区3区 久久免费视频7 | 日产乱码一二三区别免费 | 亚洲第一av在线播放 | 久久久亚洲网站 | 91高清免费 | 国产一区在线免费 | 精品不卡视频 | 亚洲专区免费观看 | 久久综合久色欧美综合狠狠 | 国产一区二区高清不卡 | 手机在线永久免费观看av片 | 色中色资源站 | 亚洲 欧洲av | 波多野结衣在线播放视频 | 天天爱天天草 | 中文在线a√在线 | 久久精品站 | 日韩电影一区二区三区在线观看 | 午夜黄网 | 色偷偷88888欧美精品久久 | 黄色一级免费网站 | 国产视频97 | 中文字幕在线观看资源 | 国产直播av | 黄色网免费 | 国产美女免费观看 | 四虎8848免费高清在线观看 | 亚洲精品动漫在线 | 九七视频在线 | 国产原创在线视频 | 超级碰碰碰免费视频 | 国产精品中文久久久久久久 | av黄色在线| 白丝av在线 | 日本高清中文字幕有码在线 | 日本激情动作片免费看 | 午夜视频色 | 国产99免费 | 国产综合精品久久 | 久久激情视频网 | 亚州欧美视频 | 国产免费久久精品 | 亚洲成熟女人毛片在线 | 五月激情丁香婷婷 | 97香蕉久久超级碰碰高清版 | 最近中文字幕免费 | 五月综合激情婷婷 | 97碰视频 | 天天草天天插 | 国产精品视频久久久 | 欧美一级片免费播放 | 成人黄色电影在线播放 | 色婷婷福利 | 中文字幕 国产专区 | 日韩欧美视频免费观看 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 96亚洲精品久久久蜜桃 | 国产高清99 | 国产一区二区午夜 | 久久免费av电影 | 国产精品久久久久av | 国产精品午夜在线 | 亚洲精品18日本一区app | 99精品视频一区 | 在线观看一级视频 | 五月精品 | 亚洲精品视频在线免费播放 | 992tv人人网tv亚洲精品 | 成人福利在线播放 | 亚洲美女在线一区 | 成人影视免费 | 九九有精品 | 午夜黄色大片 | 国产美女免费观看 | 欧美色图p | 久久99热这里只有精品 | 国语精品免费视频 | 国产视频亚洲视频 | 在线免费观看麻豆 | 久久伊人色综合 | 视频在线观看入口黄最新永久免费国产 | 麻豆视频国产精品 | 97超碰总站 | a久久久久 | 精品国产伦一区二区三区 | 免费人成在线观看网站 | 天天干天天草 | 777xxx欧美| 亚洲h视频在线 | 日韩欧美69 | 中文字幕av全部资源www中文字幕在线观看 | 久色免费视频 | 免费观看丰满少妇做爰 | 五月宗合网 | 91系列在线观看 | 91九色老 | 免费看片网页 | 一区免费观看 | 日韩精品视频第一页 | 国产97av | 国产成人亚洲精品自产在线 | 久久国产精品一区二区三区四区 | 日日夜夜国产 | 亚洲另类交 | 婷婷久久一区 | 久久国产精品区 | 天天干天天想 | 国产手机视频在线播放 | 久av电影 | 蜜桃视频在线视频 | 国产一级片免费播放 | 国产又粗又硬又爽的视频 | 国产97在线视频 | 久热香蕉视频 | 日本视频久久久 | 丝袜美腿在线视频 | 国产在线精品福利 | 日韩精品一区二区三区外面 | 四虎www com | 亚洲日韩中文字幕在线播放 | av一级片 | 国产精品欧美一区二区三区不卡 | 日韩激情第一页 | 日韩在线不卡视频 | 欧美日韩国产二区 | 久久久久免费精品国产小说色大师 | 午夜久久影视 | 在线视频观看你懂的 | 亚洲aⅴ一区二区三区 | 伊人夜夜 | www视频在线免费观看 | 久久精品国产成人 | 蜜桃av人人夜夜澡人人爽 | 国产亚洲视频中文字幕视频 | 久久综合色天天久久综合图片 | 亚洲成人av在线电影 | 性色av香蕉一区二区 | 亚洲专区欧美 | 国产69精品久久久久久 | 69绿帽绿奴3pvideos | 探花视频免费观看高清视频 | 亚洲综合在线五月 | 久9在线| 国产精品久久久av久久久 | 国产午夜三级一区二区三桃花影视 | 久久不色 | 成 人 免费 黄 色 视频 | 欧美精品中文在线免费观看 | 免费在线观看一区二区三区 | 91精品国自产拍天天拍 | 在线激情小视频 | 日韩精品不卡在线 | 在线探花 | 久久久精品欧美 | 国产中文字幕在线看 | 久草在线免费在线观看 | 在线观看久久久久久 | 91在线视频播放 | 精品一区二区三区香蕉蜜桃 | 亚洲精品视频在 |