我需要做的事情如下: 顯示國家列表>>選擇國家 - >顯示城市列表。ASP.NET MVC按國家/地區列表獲取沒有數據庫的城市列表。
所以我必須得到一個國家的城市列表,但不使用數據庫中的數據。
任何人都可以請建議我一個解決方案?我非常感謝你的幫助。
我需要做的事情如下: 顯示國家列表>>選擇國家 - >顯示城市列表。ASP.NET MVC按國家/地區列表獲取沒有數據庫的城市列表。
所以我必須得到一個國家的城市列表,但不使用數據庫中的數據。
任何人都可以請建議我一個解決方案?我非常感謝你的幫助。
您可以將信息存儲到文本文件中,甚至存儲在代碼中的靜態類中(不是一個好主意,但可行)。
然後,您只需從容器中獲取信息並構建兩個SelectList項目,一個用於國家,一個用於城市。
使用JavaScript鏈接國家改變事件的SelectList到城市的SelectList
過濾重裝假設你已經按國家城市的預設列表,你真的不能使用任何形式的數據庫,那麼也許只使用文本文件?一個國家列表的文本文件,然後每個國家的一個文件與城市列表。閱讀文本文件並根據需要進行顯示。
您可以使用API,但問題是每次加載頁面時都會有請求。並非每個API提供商都會允許這樣做。例如,Here is an API that gets Country/Cities。
當您使用.NET技術時,另一種解決方案是使用localDB。一個localDB實際上是一個數據庫,但在你的應用程序中。看看MSDN上的定義:
它很容易安裝,不需要管理,但它提供了與常規SQL Server Express相同的T-SQL語言,編程表面和客戶端提供程序。如果LocalDB的簡單性(和侷限性)滿足目標應用程序環境的需求,開發人員可以繼續在生產環境中使用它,因爲LocalDB也是一個非常好的嵌入式數據庫。
精細,自帶一點,如果你不能使用XML或JSON文件也沒有的LocalDB是讓你列表中的類,但在我看來,你應該避免這種解決方案的最後解決方案,它只會加載一切在RAM中,直到你的應用程序停止,因爲硬盤成本低於RAM我真的認爲更好的選擇是在你的應用程序中使用XML或JSON文件。
即使是CSV文件,您也需要某種「數據庫」來存儲國家和城市。 –
或者您可以使用遠程API(例如Xml或Json Web服務)。硬編碼一切在你的controlelr,甚至在你的cshtml也可以,但你不想那麼做?! – kall2sollies
是的,我的老闆要求我通過Culture Info(我得到國家名單的方式)這樣做。 – HungDQ