我爲出席一個C#桌面應用程序當應用程序(桌面C#)局域網
應用程序時,我臺機器上運行它,一切都很好工作正常..
但現在的問題是......我的老闆想要這個應用程序應該在局域網上工作,並且每個客戶端都可以訪問服務器上的應用程序
但我使用了靜態變量,它在運行時存儲了一些值,然後我在下一個表單中使用這些值。
這裏是示例..
上登錄表單的用戶名被存儲在靜態變量作爲
public static string username;
username = txtUser.Text.Trim().ToString();
和在接下來的形式,其Home Page
該用戶名被用作
lblName.Text = Login.username;
這裏lblName
是標籤的名稱和Login
的名稱登錄表
當我配置LAN上這個應用程序則可以在同一時間超過一個用戶將被記錄並要訪問的應用程序,然後每個用戶應該看到他/她自己的用戶名....
如abc
是用戶1和xyz
是用戶2
如果兩者都在同一時間登錄然後我想abc
看到
lblName.Text = "abc"
和XYZ看
lblName.Text = "xyz"
那麼我該怎麼做才能處理這份工作?
我不需要混淆用戶之間的任何信息......
我使用的C#Windows應用程序。
在此先感謝。
這個問題的答案是不使用靜態變量。你需要某種存儲機制,這可以是任何數量的東西(數據庫,本地存儲,noSQL等等)。 TBH如果你希望它*「在網絡上運行」,那麼一個網站將是明智的選擇。我擔心投票過於寬泛。你需要花些時間爲自己研究一個答案,然後在你有一個可回答的問題時回來。 – Liam
當你從局域網運行時,你真的測試過你的應用程序不工作嗎?從服務器運行桌面EXE的每個用戶都可以獲得他們自己的EXE實例 - 您不應該發生「衝突」。 – Ulric
我沒有檢查這在局域網上,但在谷歌我搜查了很多人說我不工作...所以我現在檢查這個.and將很快在這裏編輯我的問題...感謝您的時間 – Waqas