熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

體驗ASP.NET 2.0中的BuildProvider

2013-11-13 09:41:14  來源: .NET編程 
    ASPNET 的及時編譯模型和ASPNET 是不一樣的微軟重新設計了ASPNET 的頁面生成過程使這個過程可以更靈活的被控制

  在ASPNET 中我們可以通過實現自己的BuildProvider來實現編譯特殊文件的效果文件的內容是沒有限定的只要你能在BuildProvider中解析文件並返回NET的CodeDom就可以所以你甚至可以用自己的編程語言開發ASPNET程序
    其實ASPNET 中的一些新特性就是通過BuildProvider實現的比如ashx文件MastPage等你可以從NET安裝目錄下的CONFIG文件夾中的nfig中找到這些默認的BuildProvider配置

  下午簡單做了個試驗通過自定義的xml格式配置文件生成實體類的代碼只要在App_Code目錄下放如下格式的dbconfig文件ASPNET就會通過自定義的BuildProvider生成一個實體類的程序集你還能從代碼編輯器的智能感知中看到這個程序集的類是不是很酷 :)


  

  < xml version= encoding=utf  > <Database connection=> <Tables>   <Table name=Members> <Columns> <Column name=ID type=Integer /> <Column name=Name type=VarChar /> <Column name=Email type=VarChar /> </Columns> </Table>   <Table name=WorkItems> <Columns> <Column name=ID type=Integer /> <Column name=Subject type=VarChar /> <Column name=Remark type=VarChar /> <Column name=Created_On type=DateTime /> </Columns> </Table>   </Tables> </Database>

  通過上面配置文件生成的程序集在編輯器中職能感知的效果

  3.PNG

  4.PNG

  要實現以上效果還要在nfig文件中的systemweb節加上這段配置

  它聲明把dbconfig文件交給EntityBuildProvider處理


  

  <compilation debug=true> <buildProviders> <add extension=dbconfig type=MyBuildProviderEntityBuildProvider/> </buildProviders> </compilation>


From:http://tw.wingwit.com/Article/program/net/201311/11329.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.