當前位置:首頁 » 密碼管理 » aspnet訪問access

aspnet訪問access

發布時間: 2025-01-22 14:14:15

A. ASP怎樣讀取網頁內容

在現實世界中,人們經常希望能夠把某個文本文件的部分或全部內容保存到一個 Web 網頁變數中。在經典的 ASP 中,只要簡單地使用 FileSystemObject 就能做到了。其實,在 ASPFAQs.com 中就有一個 FAQ 欄目專門討論 FileSystemObject 。
可是在 ASP.NET 中呢?FileSystemObject 當然還可以用,不過,經驗表明這么做會嚴重影響伺服器性能。因此,最好還是使用 .NET 框架本身提供的類來讀取文件。本文要介紹的是如何讀取文本文件;今後我還會介紹如何使用 .NET 框架類來讀取 XML 文件。

File ? FileInfo ?

在 .NET 框架中,有許多方法可以打開文本文件。有趣的是,所有這么方法集中在 System.IO 名字空間的兩個類中。它們是 File 類和 FileInfo 類。兩個類之間的區別很小。File 類的方法全都是共享方法(靜態方法),而FileInfo 類有例外。共享方法就是不用創建類實例也能調用的方法。假設要用這兩個類刪除文件,則可以這么做:

'使用 File 類
File.Delete(fileName)

'使用 FileInfo 類
Dim fInfo as FileInfo
fInfo = new FileInfo(fileName)
fInfo.Delete()

請注意,File 類的 Delete 方法只帶一個參數,即待刪的文件,而且不必對 File 類進行實例化就能調用。再來看 FileInfo 類,它的 Delete 方法不帶參數,因為文件名在 FileInfo 類實例的構造器中指定。

就我個人而言,我偏愛 File ,因此就拿它來作示範吧。我敢打賭 File 類的效率稍微高那麼一點點,因為使用它就不會因為類的實例化而煩惱;不過那隻是猜測而已。(如果感興趣,請不妨編程比較一下它們的性能。當你完成之後,請把結果告訴我!)

打開文件

打開文本文件最簡單的途徑是調用 OpenText 方法,它將按照 UTF-8 (ASCII) 格式打開文本文件。你還可以選擇通用的 Open 方法,以便指定文件操作模式 (create/open/append/truncate) 、操作許可權 (read/write/read-write) 和文件共享許可權了;可既然你只需要讀取文本文件,那麼相對簡單的 OpenText 方法也就足以應付了。
OpenText 方法返回一個 StreamReader 對象,只要訪問該對象就能從剛才打開的文件中讀取文本內容。因此,打開文件所用的 ASP.NET 代碼大致如下:

<%@ Import Namespace="System.IO" %>
<script language="vb" runat="server">
sub Page_Load(sender as Object, e as EventArgs)
'以「只讀」方式打開文件
Dim FILENAME as String = Server.MapPath("Rand.txt")

'創建 StreamReader 類實例,准備讀取文件內容
Dim objStreamReader as StreamReader
objStreamReader = File.OpenText(FILENAME)
...

請注意,代碼的第一行導入了 System.IO 命名空間。這是因為 File 類就屬於此命名空間。還有,在 Page_Load 事件處理程序中,創建了一個字元串 FILENAME ,其內容就是欲打開的文件的物理路徑(比如 C:\Inetpub\wwwroot\Rand.txt)。最後,在 ASP.NET 中的 Server.MapPath 也和經典的 ASP 中相同 (為了更好地理解 Server.MapPath ,請別忘了閱讀位於 http://aspnet.4guysfromrolla.com/webtech/121799-1.shtml 的《Using Server.MapPath》)。

從文件中讀取文本

現在,你面臨兩種選擇:(1) 讀取文件當前位置的下一行文本到字元串;(2) 讀取整個文件的文本到字元串。如果是後者,你只需調用 ReadToEnd() 方法即可:
...
'現在,讀取整個文件的文本到字元串
Dim contents as String = objStreamReader.ReadToEnd()
...

但如果是前者呢?在讀取下一行文本之前,須得先確認尚有文本可讀。為此,可以嘗試 Peek() 方法。Peek() 方法能夠返回指定流的下一個文本字元,卻不把該字元從流中刪掉;如果流中不再有文本字元可讀,則返回 -1。接下來,只要循環遍歷 Peek() 的返回值:loop while objStreamReader.Peek() <> -1 ,並且在循環內部使用 ReadLine() 方法讀取下一行文本就行了:

While objStreamReader.Peek() <> -1
someString = objStreamReader.ReadLine()
'... do whatever else you need to do ...
End While

切記!關閉 StreamReader 對象!

當你讀完全部文本,並且不再操作此文件時,千萬記住要使用 Close() 方法關閉 StreamReader 對象,以關閉此文件。如果你忘記這么做,則 ASP.NET 操作進程將保持對此文件的只讀鎖定狀態,因而當你換用其它帳號操作此文件時將會遇到錯誤信息 「access denied」(拒絕訪問) ;而且當你試圖刪除或覆蓋此文件時也將遇到同樣的錯誤信息;只不過 ASP.NET 本身對此文件的操作卻不受影響。因此,一定要在完成操作之後關閉文件。

附:完整的示範程序

<%@ Import Namespace="System.IO" %>
<script language="vb" runat="server">
sub Page_Load(sender as Object, e as EventArgs)
'以只讀方式打開一個文件
Dim FILENAME as String = Server.MapPath("Rand.txt")

'實例化一個 StreamReader 對象用於讀取文件
Dim objStreamReader as StreamReader
objStreamReader = File.OpenText(FILENAME)

'現在,讀入整個文件的文本並保存到一個字元串里
Dim contents as String = objStreamReader.ReadToEnd()

'在一個 Web 控制項中顯示文本
lblRawOutput.Text = contents

'為了在便於瀏覽,最好把回車字元替換成 <br>
lblNicerOutput.Text = contents.Replace(vbCrLf, "<br>")

objStreamReader.Close()
end sub
</script>
<b>Raw File Output</b><br />
<asp:label runat="server" id="lblRawOutput" />
<p>
<b>Nicer Output</b><br />
<asp:label runat="server" id="lblNicerOutput" Font-Name="Verdana" />

結論

本文附帶了一個示範程序的源代碼。該程序簡單地打開一個硬編碼的(hard-coded)文本文件,然後把其中的所有文本一次性保存到指定字元串里,再把字元串的值顯示在伺服器端的一個 Web 控制項 label 中。
你看,通過 ASP.NET 頁面讀取文本文件內容實在不難。雖然在語法上和經典 ASP 的 FileSystemObject 對象有些差異,但是學起來真的很容易。為了更好的掌握如何在 ASP.NET 中讀寫文件,請務必閱讀 《ASP.NET: Tips, Tutorials, and Code》一書 (樣本見 http://www.4guysfromrolla.com/webtech/chapters/ASPNET2 )!

B. 如何使用c#操作ACCESS資料庫

1.C#連接連接Access

using System.Data;
1.C#連接連接Access

using System.Data; using System.Data.OleDb; string strConnection="Provider=Microsoft.Jet.OleDb.4.0;"; strConnection +=@"Data Source=C:\BegASPNET\Northwind.mdb"; OleDbConnection objConnection=new OleDbConnection(strConnection); objConnection.Open(); objConnection.Close();
解釋:
連接Access資料庫需要導入額外的命名空間,所以有了最前面的兩條using命令,這是必不可少的!

strConnection這個變數里存放的是連接資料庫所需要的連接字元串,他指定了要使用的數據提供者和要使用的數據源.

"Provider=Microsoft.Jet.OleDb.4.0;"是指數據提供者,這里使用的是Microsoft Jet引擎,也就是Access中的數據引擎,asp.net就是靠這個和Access的資料庫連接的.

"Data Source=C:\BegASPNET\Northwind.mdb"是指明數據源的位置,
他的標准形式是"Data Source=MyDrive:MyPath\MyFile.MDB".

PS:
1." ="後面的"@"符號是防止將後面字元串中的"\"解析為轉義字元.
2.如果要連接的資料庫文件和當前文件在同一個目錄下,還可以使用如下的方法連接:
strConnection ="Data Source=";
strConnection +=MapPath("Northwind.mdb");

C. 我的操作系統是NTFS格式的,如何重新設置ACCESS資料庫許可權

以下是轉載!我的是APX.NET 試過好用
1。文件夾、文件的 NTFS 許可權設置:在文件夾、文件上右擊,選「屬性」,然後找
「安全」選項卡,你就看到文中所說的那些許可權設置的位置。

2。如果你使用的是 Windows XP,則有可能你的「安全」選項卡是隱藏的,在「控制
面板」中找到「文件夾選項」,單擊「查看」選項卡,在下面的列表中找到「使用簡
單共享(推薦)」這個選項,去掉此項前面的勾,然後重新打開文件夾、文件的「屬
性」就可以看到「安全」選項卡了。

3。 ASP還是 ASP.NET?。
ASP 中執行 Access 操作的帳戶是 IUSR_(你的機器名) (「Internet 來賓帳戶」)
在 ASP.NET 中默認是以一個叫做 ASPNET 的虛擬用戶的身份來訪問、操作資料庫
的,你可以在「控制面板」-「管理工具」-「計算機管理」-「本地用戶和組」-「用
戶」中看到這個用戶,默認情況下是:

全名:ASP.NET 計算機帳戶
描述為:用於運行 ASP.NET 輔助進程(aspnet_wp.exe)的帳戶。
隸屬於:Users組。

使用這么一個隸屬於 Users 組的用戶來進行文件操作、資料庫操作的風險是要比
用一個 Administrators 組的用戶的風險要小得多,這也是 ASP.NET 在安全方面的
一個考慮吧。

既然是這么一個用戶需要訪問、操作資料庫文件本身,那麼我們就需要給它一定
的 NTFS 許可權以允許它的訪問。顯然沒有 NTFS 的許可權許可,ASPNET 就無法訪問、
操作資料庫,就會出現上面實驗中所看到的那些錯誤了。

D. 下載的asp.net源碼怎麼用

asp.net環境配置ASP.NET
一、安裝IIS與配置IIS

在Windows 2000、Windows XP、Windows 2003或Windows Vista等操作系統中,IIS文件及安裝方式都有所不同。

1、Windows 2003下安裝IIS:

依次點擊「開始」->「設置」->「控制面板」->「添加刪除程序」,在出現的「添加刪除程序」界面中,單擊

「添加/刪除 Windows組件」,在出現的「Windows組件向導」窗口中,選中「應用程序伺服器」後單擊「下一 步」

按鈕,系統開始安裝IIS組件。

2、Windows 2003的IIS配置:

安裝好IIS後,在「控制面板」雙擊「Internet信息服務(IIS)管理器」,在「Internet信息服務」窗口中,點選

「默認網站」後右鍵選擇「屬性」,在出現的「默認網站屬性」窗口中,右鍵依次選擇「屬性」->選擇網站主目錄。

這里只要選擇本地路徑就可以了。

另外在Web服務擴展中允許 ASP.NET v2.0.50727

3、Windows 2000、Windows XP下安裝IIS:在Windows 2000、Windows XP操作系統中,IIS安裝方法和配置與Windows 2003相似。這里就不詳細寫了。

4、Vista下安裝IIS:

依次點擊「開始」->「控制面板」->「程序」,在出現的「程序和功能」界面中單擊「打開或關閉Windows功能」展開「Internet信息服務」:

在「Web管理工具」中,選中「IIS管理服務」、「IIS管理腳本和工具」、「IIS管理控制台」選項;在「萬維網服務」中,選中「應用程序

開發功能」中的「.NET擴展性」、「ASP」「ASP.NET」 選項。。

選擇好後單擊「確定」按鈕,系統開始安裝IIS組件,幾分鍾後IIS即可安裝完成。

5、Windows Vista的IIS配置:

依次點擊「開始」->「所有程序」->「管理工具」->「Internet信息服務(IIS)管理器」,在出現的「Internet信息服務(IIS)管理器」界面中,

依次點擊「網站」-> 「設置網站默認設置」。

在出現的「網站默認設置」窗口中,單擊「應用程序池」,在「應用程序池」的下拉菜單中,將「應用程序池」改為「Classic.NET AppPool」。

雙擊「默認文檔」,修改首頁的默認文檔及排序,單擊「應用」按鈕保存設置。

二、安裝與配置.NET Framework 2.0

您可以通過微軟的官方網站下載.NET Framework 2.0 (下載地址http://www.microsoft.com/downloads/details.aspx?FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5&DisplayLang=en)安裝程序。.NET Framework 2.0的安裝過程非常簡單,在解壓.NET Framework 2.0安裝包後,雙擊安裝目錄下的dotn

betfx2.0.exe安裝文件,按照安裝提示進行安裝即可。

配置網站以支持.Net2.0。依次點擊「開始」->「程序」->「控制面板」->「管理工具」->「Internet信息服務」,在「Internet信息服務」管理界面中點選「默認網站」後右鍵

選擇「屬性」,在出現的「默認網站屬性」窗口中單擊「ASP.NET」選項卡,並在「ASP.NET version」中選擇「2.0.50727」。同時還可以看到其

安裝路徑等信息。

三、安裝與配置SQL Server 2000/2005

只介紹SQL Server 2005的安裝。

1、以下是安裝過程中的幾個重要設置。。建議一般用戶在安裝過程中按照以下示例進行設置。這里演示的是SQL2005開發版的安裝。

2、如果你是用於測試環境,建議進行全部安裝。如果是生產環境,請專業人員配置安裝。

3、如果程序要用到報表伺服器,就要選擇reporting services,否則在安裝過程中安裝程序沒有配置伺服器,那麼就會無法使用報表伺服器。

4、sa密碼一定要復雜。也要可以在安裝完SQL之後把SA帳戶刪除,以保安全。

四、文件夾許可權配置

首先要注意的是:為了你網站的安全請不要在IIS中打開寫入許可權,並且將你的磁碟文件系統格式轉化安全一點的NTFS格式。請參照下面的說明進行許可權的配置。

當站點在NTFS分區時,如果站點所在的目錄或者資料庫目錄沒有給訪問的用戶讀寫許可權,那就會引起以下的錯誤:

1、「Microsoft JET Database Engine (0x80040E09) 不能更新。

2、資料庫或對象為只讀

3、出現」請確認你具有對文件夾與文件有讀寫的許可權」等提示

解決方法:我們假定站點在H:\website 目錄下,下面的圖示以WINXP為例,其它系統可以參照進行設置,

具體操作如下:

1、查看站點是否安裝在NTFS分區內,如果不是NTFS格式請轉化為NTFS文件系統格式。也只有NTFS格式才能進行下面講到的許可權配置操作.

2、請進入文件管理器的文件夾選項

3、將「使用簡單文件共享」前的勾選去掉

4、右鍵點擊動易系統安裝目錄-共享和安全

6、點擊高級選項

7、查找用戶或組

8、選擇aspnet帳戶

9、點擊確定

10、勾選站點目錄對於aspnet 的讀寫許可權

E. ASP.NET 未被授權訪問所請求的資源。請考慮授予 ASP.NET 請求標識訪問此資源的許可權。

我建議你先去到事件查看器中查看一下iis的報錯,然後拿著這個報錯去晚上搜一下,我這邊之前碰上這個問題,最否發現iis報錯2208,需要修改相關的配置文件,也有一次是因為iis sid未授權導致的,總之xiankaniis具體報錯。

熱點內容
微信青少年模式獨立密碼是什麼 發布:2025-01-22 16:52:06 瀏覽:587
騰訊雲伺服器怎麼購買 發布:2025-01-22 16:45:01 瀏覽:628
天貓怎麼上傳視頻 發布:2025-01-22 16:40:02 瀏覽:725
安卓如何把抖音評論換成黑色 發布:2025-01-22 16:30:57 瀏覽:700
連接池Java 發布:2025-01-22 16:28:27 瀏覽:258
搶杠演算法 發布:2025-01-22 16:15:02 瀏覽:72
圖片伺服器ftp 發布:2025-01-22 15:52:33 瀏覽:507
sql打開bak文件 發布:2025-01-22 15:47:32 瀏覽:107
opengl伺服器源碼 發布:2025-01-22 15:40:02 瀏覽:909
python部署服務 發布:2025-01-22 15:38:46 瀏覽:283