簡體   English   中英

我應該為用戶信息數據庫使用什么類型的數組? vb.net

[英]What type of array should I use for a database of information about the user? vb.net

所以我試圖建立一個系統,一個人可以輸入關於不同人的數據,我想把它存儲在紡織品中以搜索和排序數據,它會包含名字、姓氏、位置、電話號碼。

如果我要使用二維數組,我 go 如何通過循環輸入數據而不是自己寫出來。

或者我可以使用一維 arrays 並將每種類型的數據、名字、姓氏等存儲在單獨的文本文件中,但我不確定這是否可行/是否有效。

如果將數據存儲為 JSON,則更易於維護。

您將創建一個 class 來表示數據,讀取文件,將內容解析為 class 的集合,然后使用 LINQ 進行過濾。

如果您不進行任何插入/更新,這將足夠有效,在這種情況下,我建議您移至數據庫來處理這些操作。 仍然可以使用相同的方法,只需將 JSON 集合序列化回文件,但您會很快發現寫操作速度明顯變慢。

以下是定義 class 的示例:

Public Class Person
    <JsonProperty("firstName")>
    Public Property FirstName As String

    <JsonProperty("surname")>
    Public Property Surname As String

    <JsonProperty("location")>
    Public Property Location As String

    <JsonProperty("phoneNumber")>
    Public Property PhoneNumber As String

End Class

以下是讀取文本文件並將其解析為您的 class 集合的示例:

Public Function GetPeople(path As String) As IEnumerable(Of Person)
    Dim literal = IO.File.ReadAllText(path)
    Dim people = JsonConverter.DeserializeObject(Of IEnumerable(Of Person))(literal)

    Return people
End Function

這是將人員添加到集合並將其序列化回文件的示例:

Public Function AddPerson(path As String, record As Person) As IEnumerable(Of Person)
    Dim people = GetPeople(path).ToList()
    people.Add(record)
    IO.File.WriteAllText(path, people.ToString())
    Return people
End Function

請記住,您需要添加異常處理和業務邏輯來檢查 state 是否符合您的預期。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM