<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      博客園現(xiàn)代化建設(shè)——Entity Framework

      在博客園新版博客后臺(tái)的開發(fā)中,為了將園子的現(xiàn)代化建設(shè)步伐邁得更大一些,準(zhǔn)備裝備最先進(jìn)的武器。之前已經(jīng)配備ASP.NET MVC 3,目前正在試驗(yàn)剛從微軟引進(jìn)的最新型號(hào)新式武器——Entity Framework 4.1 RC

      試驗(yàn)情況分析:

      1. 數(shù)據(jù)庫(kù)連接字符串的回歸

      在之前版本的Entity Framework中,微軟另搞了一套連接字符串,以至無(wú)法直接使用原來(lái)的ADO.NET連接字符串。害得我們只能改裝它,以重用以前的連接字符串,詳見在Entity Framework中重用現(xiàn)有的數(shù)據(jù)庫(kù)連接字符串

      在這個(gè)版本中,微軟終于知錯(cuò)就改,直接使用ADO.NET連接字符串,代碼如下:

      public class BlogDbContext : DbContext
      {
      public BlogDbContext()
      :
      base(ConfigurationManager.ConnectionStrings["BlogDB"].ConnectionString)
      {}
      }

      這樣多好,雖然是新式武器,原來(lái)的炮彈照樣用。

      2. 失靈的Entity Data Model

      這個(gè)不知是VS 2010 SP1還是Entity Framework 4.1 RC的Bug,無(wú)法在VS2010中通過Entity Data Model向?qū)?chuàng)建Entity Data Model。見下圖:

      點(diǎn)擊下一步,選擇連接字符串的窗口一閃而過...然后什么也沒發(fā)生,.edm文件也沒創(chuàng)建。

      難道VS2010在玩捉迷藏的游戲?那就捉唄...終于把它給找出來(lái)了,方法是:在VS2010的Server Explorer中刪除所有的數(shù)據(jù)庫(kù)連接。

      但是,在創(chuàng)建連接字符串之后,“奇跡”出現(xiàn)了:

      畢竟就不是正式版,出點(diǎn)Bug也情有可原,而且本來(lái)也沒指望Entity Data Model,只是想從數(shù)據(jù)庫(kù)生成實(shí)體類,省點(diǎn)力氣。既然它失靈了,那就手寫實(shí)體類代碼唄。

      3. 實(shí)體類與數(shù)據(jù)庫(kù)表的自動(dòng)映射

      1) 自動(dòng)在實(shí)體類中發(fā)現(xiàn)“主鍵”屬性,前提是屬性名稱是ID或者實(shí)體類名+ID,比如下面的實(shí)體類:

      public class Blog
      {
      public int BlogID { get; set; }
      public string Application { get; set; }
      public string Author { get; set; }
      public string UserName { get; set; }
      }

      Entity Framework會(huì)自動(dòng)發(fā)現(xiàn)BlogID就是主鍵,當(dāng)然,你也可以通過[Key]指定主鍵。

      2) 如果實(shí)體類的屬性名與數(shù)據(jù)庫(kù)表的字段名相同,不需要任何配置,Entity Framework會(huì)自動(dòng)進(jìn)行映射。

      3) 如果實(shí)體類的類名與數(shù)據(jù)庫(kù)表的表名相同,不需要任何配置,Entity Framework會(huì)自動(dòng)進(jìn)行映射。否則,要通過下面的代碼進(jìn)行手工映射:

      public class BlogDbContext : DbContext
      {
      protected override void OnModelCreating(DbModelBuilder modelBuilder)
      {
      modelBuilder.Entity
      <Blog>().ToTable("blog_Config");
      }
      }

      注:Blog是實(shí)體類名,blog_Config是數(shù)據(jù)庫(kù)表名。

      如果符合自動(dòng)映射的條件,使用Entity Framework很方便,只要在數(shù)據(jù)訪問層添加Entity Framework的引用,并添加一個(gè)繼承自DbContext的類,然后就可以隨時(shí)隨地使用。

      試驗(yàn)結(jié)論:

      該武器雖然有部件失靈,但總體來(lái)說(shuō)攜帶方便,部署靈活,自動(dòng)化程度高,是現(xiàn)代化建設(shè)的必備!

      posted @ 2011-03-22 11:29  dudu  閱讀(12511)  評(píng)論(59)    收藏  舉報(bào)
      主站蜘蛛池模板: 亚洲精品亚洲人成在线| 国产成人啪精品视频免费APP | 久久天天躁狠狠躁夜夜躁| 亚洲欧美另类久久久精品播放的| 久久久久香蕉国产线看观看伊| 一区二区视频| 国产中文字幕精品喷潮| 亚洲国产综合性亚洲综合性| 韩国福利视频一区二区三区| 日韩国产中文字幕精品| 国产精品中文字幕观看| 亚洲一区二区三区18禁| 悠悠色成人综合在线观看| 国产亚洲精品成人无码精品网站| 彰化市| 99精品视频九九精品视频| 中文字幕av无码免费一区| 色欲av亚洲一区无码少妇| 东京热人妻丝袜无码AV一二三区观| 国产亚洲一区二区三区av| 国产在线中文字幕精品| 中国丰满少妇人妻xxx性董鑫洁| 成人欧美一区二区三区在线观看| 人人澡超碰碰97碰碰碰| 欧美日韩高清在线观看| 伊人欧美在线| 九九热视频在线观看视频| 成人午夜福利视频后入| 无码无需播放器av网站| 国厂精品114福利电影免费| 国产精品美女乱子伦高| 久久亚洲中文无码咪咪爱| 国产精品福利自产拍在线观看 | 欧美极品色午夜在线视频| 国产女人18毛片水真多1| 久久久亚洲欧洲日产国码606| 久久国产精品波多野结衣av| 国产高清亚洲一区亚洲二区| 青青青爽在线视频观看| 亚洲成av人片天堂网老年人| 亚洲欧洲一区二区三区久久|