如果服務器上存在文件,我希望能夠在我的C#Web應用程序中具有文本框警報。有任何想法嗎?這裏是C#的新手。因此,舉例來說,如果我有的text.txt(我知道,它總是要的text.txt)有人落入一個文件夾到文件服務器,我的Web應用程序頁面將使用定時器提醒我(或類似的東西)。ASP.NET文本框警報
3
A
回答
0
最好的方式來檢查,如果一個特定的文件存在,將File.Exists:
if (File.Exists("c:\\test.txt"))
//inform user
1
可以使用FileSystemWatcher類用於此目的。但是,它必須作爲客戶端應用程序(Windows窗體應用程序或服務)運行,而不是從Web應用程序(您無法從瀏覽器內訪問客戶端計算機)運行。
1
試一下這個
string path = "C:\\TestFolder\\......."; // Path
DirectoryInfo directory = new DirectoryInfo(path);
foreach (FileInfo file in directory.GetFiles())
{
if (file.Name == text.txt)
{
MessMessageBox.Show("Text file exists");
}
}
希望這將有助於
2
你的web應用程序正在運行在Web服務器上,這可能是在某個鎖定的服務器機房。顯示彈出式對話框不會有任何好處,因爲沒有人會看到它。
你想要的是顯示在客戶端對話框(即在Web瀏覽器在看你的網頁)。要做到這一點,你必須使用JavaScript;具體來說就是alert函數。
但現在你已經有了一個溝通的問題:你的客戶端JavaScript需要能夠詢問文件是否存在服務器。可能最好的辦法是在JavaScript中創建一個定時器(setInterval),它向服務器發送一個AJAX請求。你會在服務器上有一個「頁面」 - 一些.aspx文件 - 它不是HTML,而是返回一些代表文件是否存在的簡單代碼(可能和「0」或「1」一樣簡單)。然後,您的JavaScript可以將該「頁面」內容加載到變量中,檢查該變量,並知道是否顯示警報。
至於如何做AJAX,你要使用圖書館像jQuery。如果你還沒有選擇一個庫,然後閱讀它的文檔,看看如何做AJAX請求。
1
// TODO: Read up on FileSystemWatcher
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = @"C:\MyDirectory";
watcher.Changed += new FileSystemEventHandler(watcher_Changed);
watcher.Deleted += new FileSystemEventHandler(watcher_Deleted);
watcher.Renamed += new RenamedEventHandler(watcher_Renamed)
watcher.Created += new FileSystemEventHandler(watcher_Created);
watcher.EnableRaisingEvents = true;
watcher.Filter = "*.txt"; // could also set it to "text.txt" or "*"
void watcher_Changed(object sender, System.IO.FileSystemEventArgs e))
{
MessageBox.Show("Zomg " + e.FullPath +" has been changed!!");
}
private void fileWatcher_Renamed(object sender, System.IO.RenamedEventArgs e)
{
MessageBox.Show(e.OldFullPath + " was renamed to " + e.FullPath);
}
private void fileWatcher_Deleted(object sender, System.IO.FileSystemEventArgs e)
{
MessageBox.Show(e.FullPath + " was deleted!");
}
private void fileWatcher_Created(object sender, System.IO.FileSystemEventArgs e)
{
MessageBox.Show(e.FullPath + " was created!");
}
相關問題
- 1. 正從文本框在警報
- 2. 文本框爲空時的警報
- 3. Javascript警報和文本框輸入
- 4. ValidatorCalloutExtender警報框
- 5. 從PHP加載文本和警報 - 什麼都沒有顯示在警報框
- 6. Java警報框架
- 7. 警報對話框
- 8. 警報對話框?
- 9. 基本的JS問題:取代文字警報圖像警報
- 10. 如何獲取validationsummary文本以將自定義警報ASP.NET
- 11. 動態警報查看文本正文
- 12. iOS本地警報
- 13. 警報和自動刷新文本框,如果長度爲4
- 14. 帶有表單和一個輸入文本的警報框
- 15. HTML5警報框文本更改沒有JS
- 16. 單選按鈕和警報對話框中的文本視圖
- 17. 如何在自定義警報對話框中設置文本?
- 18. 類似Twitter的文本框字符數與內聯警報
- 19. 在Safari中將警報設置爲文本框
- 20. 當colorprimary是白色時不顯示警報對話框文本
- 21. 爲什麼我的警報框不顯示正確的文本?
- 22. 更改特定文本的顏色警報對話框
- 23. 使用樣式的警報對話框文本顏色
- 24. JavaFX警報對話框中的文本方向
- 25. 警報對話框中的可點擊文本
- 26. 警報對話框中的文本顏色不會更改
- 27. Android在警報對話框中設置文本
- 28. 如何過濾警報對話框中的文本?
- 29. 在警報對話框中顯示多行文本
- 30. 更改警報對話框的文本顏色
有沒有一種簡單的方法可能在Web應用程序上顯示該文件在那裏?有點像列表視圖或什麼的?我需要能夠看到該文件或有某種方式知道它在Web應用程序中的位置,以及有關如何執行該操作的一些指導。 – GabrielVa 2011-02-14 14:17:25
如果要檢查文件是否在自己的服務器中刪除,然後確認你可以再次使用FileSystemWatcher的..而當事件發生處理,並反映在您的webpage..you可以使一個Ajax調用換做這個 – 2011-02-14 14:20:33
如果你還想要別的東西..擴大你的整個場景..我可能會想到你想做什麼。 – 2011-02-14 14:21:35