我试图保存一些字符串列表,这样如果我关闭程序,我就不会丢失所有信息。
我有这些变量:
list<string> StudentName = new list<string>;
list<string> Email = new list<string>;
list<string> StudentID = new list<string>;
我在用户提交完全填写的表单后,为每个列表添加一个新变量。如果有人要关闭应用程序,我希望保存每个列表中的所有变量。我过去曾使用应用程序设置存储数据,但我不知道有多少人会使用此应用程序。
答案 0 :(得分:2)
一种可能性是聚合类型
中的列表public class AppState
{
public List<string> StudentName = new List<string>();
public List<string> Email = new List<string>();
public List<string> StudentID = new List<string>();
}
并使用Xml serialization and deserialization将数据存储在文件中。
答案 1 :(得分:0)
您可以将值存储在数据库中:
// I'd create a model to start with
public class Student
{
public int StudentID {get; set;}
public string StudentName {get; set;}
public string Email {get; set;}
}
// Followed by a Controller to store the data:
public class StoreStudentOnAppClose()
{
public void StoreStudents()
{
List<Student> studentList = new List<Student>();
// Predefined method which you'll add to your class to grab each student from the database table.
studentList = GetStudentList();
foreach(var student in studentList)
{
var db = UmbracoContext.Application.DatabaseContext.Database;
var insert = new Sql("INSERT INTO students VALUES('" + StudentID + "', '" + StudentName +"'. '" + Email +"' )");
int res = db.Execute(insert);
}
}
}
这显然是在Umbraco应用程序的上下文中,但重点是相同的,您只需更改连接字符串。