[英]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.