小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Asp.net 2.0 Webpart 數(shù)據(jù)庫的遷移...

 素行 2007-03-21

作者:童振華  (轉(zhuǎn)載請注時作者)

 

       Webpartasp.net 2.0中一項非常出色的功能,但是非常遺憾的是,默認(rèn)是使用sql express 2005作為后臺數(shù)據(jù)庫。而且很多初學(xué)者在本機(jī)寫完程序遷移到服務(wù)器上以后才如夢初醒,原來還要后臺數(shù)據(jù)庫的,甚至WROX出的《Professional ASP.NET 2.0》在講webpart這節(jié)時都不曾提及后臺數(shù)據(jù)庫的事,真是讓人失望之極(起碼我沒看到)。而目前主流的網(wǎng)站都是用MS SQLServer 2000或是Access作為數(shù)據(jù)庫,如何才能把Webpart的數(shù)據(jù)庫從SQL Express 2005遷移到SQLServer 2000Access呢?

 

遷移到SQLServer 2000

 

       微軟提供了一個數(shù)據(jù)庫配置程序,可以方便的在SQLServer2000SQLServer2005上進(jìn)行webpart的數(shù)據(jù)庫配置

       1.首先運(yùn)行SQLServer

       2.然后運(yùn)行C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regsql.exe 會出現(xiàn)一個圖形化的操作界面,根據(jù)提示便可自動生成一個名為aspnetdb的庫。

       3.打開vs.net 2005,新建一個網(wǎng)站,往頁面上拖一個webpartmanager,運(yùn)行一下,出錯。因為你還沒有配web.config呀,而且vs.net2005vs.net2003有所不同,默認(rèn)是沒有web.config文件的,需要我們自己增加,(當(dāng)然你也可以直接修改C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG下默認(rèn)的web.config,但是我不推薦)

       4.在新加的web.config中把  <connectionStrings/>一行修改成如下

  <connectionStrings>

    <remove name="LocalSqlServer" />

    <add name="LocalSqlServer" connectionString="Data Source=localhost;Initial Catalog=aspnetdb;Persist Security Info=True;User ID=sa;Password="

        providerName="System.Data.SqlClient" />

  </connectionStrings>

 

完成后的web.config

<?xml version="1.0" encoding="utf-8"?>

<!--

    注意: 除了手動編輯此文件以外,您還可以使用

    Web 管理工具來配置應(yīng)用程序的設(shè)置??梢允褂?span lang=EN-US twffan="done"> Visual Studio 中的

     “網(wǎng)站”->Asp.Net 配置”選項。

    設(shè)置和注釋的完整列表在

    machine.config.comments 中,該文件通常位于

    \Windows\Microsoft.Net\Framework\v2.x\Config

-->

<configuration>

    <appSettings/>

    <connectionStrings/>

    <system.web>

        <!--

            設(shè)置 compilation debug="true" 將調(diào)試符號插入

            已編譯的頁面中。但由于這會

            影響性能,因此只在開發(fā)過程中將此值

            設(shè)置為 true。

        -->

        <compilation debug="false" />

        <!--

            通過 <authentication> 節(jié)可以配置 ASP.NET 使用的

            安全身份驗證模式,

            以標(biāo)識傳入的用戶。

        -->

        <authentication mode="Windows" />

        <!--

            如果在執(zhí)行請求的過程中出現(xiàn)未處理的錯誤,

            則通過 <customErrors> 節(jié)可以配置相應(yīng)的處理步驟。具體說來,

            開發(fā)人員通過該節(jié)可以配置

            要顯示的 html 錯誤頁

            以代替錯誤堆棧跟蹤。

 

        <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">

            <error statusCode="403" redirect="NoAccess.htm" />

            <error statusCode="404" redirect="FileNotFound.htm" />

        </customErrors>

        -->

    </system.web>

</configuration>

 

遷移到Access

   webpart的數(shù)據(jù)庫遷移到sqlserver是一件非常方便的事,但是對于很多小型網(wǎng)站來說,access才是最佳選擇。但是要將數(shù)據(jù)庫遷移到Access卻是一件非常的復(fù)雜的事情, 而且網(wǎng)上也沒有查到這方面現(xiàn)成的中文資料,之前在微軟英文asp.net新聞組發(fā)了個貼子也沒人回答,有些英文資料也是語焉不詳,不成系統(tǒng)。

  下面我來說一下詳細(xì)的過程。

   首先你需要一個accessProvider以及相對應(yīng)的數(shù)據(jù)庫。之前我曾經(jīng)從網(wǎng)上找了一個accessprovider,并嘗試把SQLServer版的表導(dǎo)出成Access,結(jié)果發(fā)現(xiàn)這條路是行不通的,因為不匹配。

       目前在英文google里能找到兩個accessProvide

       一個是AccessPersonalizationProvider,下載地址是

http://www./files/AccessPersonalizationProvider.zip

命名空間為MarkItUp.SingleUserBlog.Web.WebParts.AccessProviders  雖然在源代碼注釋里也寫著copyright是微軟的,但是下載時沒有對應(yīng)的數(shù)據(jù)庫。

       另外一個是微軟官方網(wǎng)站上的以前Beta1時出的 SampleAccessProviders,解壓后自帶一個access數(shù)據(jù)庫,而且還有web.config的樣例。下載地址是

http://msdn.microsoft.com/vstudio/eula.aspx?id=96713a8e-b8d4-4d6e-bb8f-027e6c8e15d8

我用的是后者。

下載后,名字是SampleAccessProviders.vsi,解壓縮后可以在C:\Documents and Settings\Administrator\My Documents\Visual Studio 2005\Templates\ProjectTemplates\Visual Web Developer\Starter Kits\ASP.NET Access Providers  找到。

你可以用vs.net2005打開Access.csproj編譯出dll,名字為SampleAccessProviders.dll,然后把ASPNetDB.mdb復(fù)制到App_Data目錄,然后在自己的網(wǎng)站中引用SampleAccessProviders.dll,并參考那個web.config修改自己的配置文件。

 

關(guān)于其他數(shù)據(jù)庫

由于SampleAccessProviders是開放源代碼的,所以參照著自己擴(kuò)展Provider。目前網(wǎng)上可以找到XmlFilePersonalizationProvider。對于Oracle,mysql等數(shù)據(jù)庫可以自己寫擴(kuò)展Provider,但是目前我們已有了access這種數(shù)據(jù)庫獨立的方式,所以可以通過混用來實現(xiàn)更為方便。

 

 

后記:來到埃塞俄比亞當(dāng)志愿者已有近兩個月了,工作一點挑戰(zhàn)也沒有,又打戰(zhàn)了,在這種網(wǎng)絡(luò)只有56K的鳥地方,真是一種痛苦。百無聊賴之際,想想以前在國內(nèi)一直沒有時間空下來好好研究一下vs.net2005,(主要是更喜歡vs.net 2003的小巧),特寫此文,結(jié)果寫完了,一直上了不博客園,直到今天才打開,真是郁悶呀。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多