将数据库中的多行信息添加到文本框中
本文关键字:添加 文本 信息 数据库 | 更新日期: 2023-09-27 18:28:22
感谢您审阅我的问题。基本上,在我的表格中……经理可以给员工设置提醒,所以当员工登录我的表格时……它会收到经理的提醒。
问题是,数据包含来自同一用户的多个提醒,但当我将它们添加到文本框中时,我会收到以下错误:
System.Core.dll 中发生"System.InvalidOperationException"类型的未处理异常
附加信息:序列包含多个元素
我的代码:
System.Windows.Forms.Form f = System.Windows.Forms.Application.OpenForms["Login"];
int id = Convert.ToInt32(((Login)f).idTb.Text);
SundownDatabaseEntities4 db = new SundownDatabaseEntities4();
var getrecord = db.Reminders.Where(a => a.Id == id).SingleOrDefault();
reminderTb.Text = Convert.ToString(getrecord.Reminder1);
如何在文本框中添加多个元素?我可以用一个列表框吗?
听起来你正试图将多个不同的字符串附加到一个文本框中,在这种情况下,我会使用文本框上的appendText()扩展名来添加多个字符串。如果您愿意,也可以使用ListBox。为了便于使用,我会将Source设置为您发送的数据。
这是附加文本函数的链接https://msdn.microsoft.com/en-us/library/system.windows.forms.textboxbase.appendtext(v=vs.110).aspx
以下是如何为列表框设置源的链接https://msdn.microsoft.com/en-us/library/system.windows.forms.listcontrol.datasource(v=vs.110).aspx
编辑
为了补充,因为这是其他原因导致的问题,我会使用:
List<object> objects = Enumerable.Select(i => i.id == id);
以下是msdn的链接以获取更多信息https://msdn.microsoft.com/library/bb548891(v=vs.100).aspx
编辑2
在我终于更新了我的VS并四处玩耍之后,我认为你能在这里做的最简单的事情是:
db.Reminders.ForEach(reminder => {if(reminder.Id == id){ reminderTb.AppendText(Convert.ToString(reminder.Reminder1)); }})
你可能需要根据你的特定代码进行相应的调整——不确定我是否正确地使用了你的类结构,但这将查看提醒数组,查看并在该特定id上,它将根据你的代码和我看到的类结构将文本附加到文本框中,我认为这是你想要的。这应该是有效的,因为您要手动遍历数组并添加文本。