c# - 将 IQueryable 的结果转换为字符串以显示在文本框中

标签 c# wpf linq-to-sql ado.net-entity-data-model

使用 C#、WPF、.NET 4.5 在我的程序中,我试图从数据库中填充 TextBox 的值。该值通过 LINQ 语句获取。我已经尝试了所有不同的东西,例如 To.String()Console.WriteLine() 等。如果您能想出一种方法来完成这项工作,那就是太棒了,如果你能找到一种更好的方法来选择数据并显示它,我也会对此感兴趣。 C#代码:

private AuroraEntities auroraContext = null;    
private void LoadTB()
    { 
     this.auroraContext = new AuroraEntities();
     ObjectQuery<Inventory> inventories = auroraContext.Inventories;
     string name = ingNameCB.SelectedValue.ToString();  
     var queryResult = (from q in inventories
                        where q.InventoryName == name                          
                        select q);

    textBox1.DataContext = queryResult.ToString();
    }

XAML:

<TextBox Height="23" HorizontalAlignment="Left" Margin="70,186,0,0" Name="textBox1" VerticalAlignment="Top" Width="120" Text="{Binding Path=InventoryName, Mode=TwoWay}" 

谢谢!

最佳答案

您是否期待单一结果?如果是这样,请使用 First , 或 Single , 或 FirstOrDefault获取单个 Inventory 项目(这些选项中哪个最合适将取决于您的情况)。但是,您随后将拥有一个 Inventory 项目,一个 Inventory.ToString() 也可能不会给您您想要的东西。

您要从库存中展示什么?其名称?它的描述?也许是组合?您应该非常仔细地考虑这一点 - 一旦您决定了您实际想要实现的目标,为其编写代码可能会非常简单。

如果您的查询可以返回多个结果,您就需要考虑更多。拥有一个文本框是否有意义?也许您应该填充某种表格?

关于c# - 将 IQueryable 的结果转换为字符串以显示在文本框中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18036713/

相关文章:

c# - 从基本系统类型到字符串的转换是否可逆?

wpf - 在没有转换器的情况下根据 bool 值绑定(bind) Image.Source?

wpf - 在 WPF 中滑动面板的最佳方法是什么?

c# - 测试字典<k,v>中的一项

c# - 分配给 List 到另一个 List 之前的列表会自动改变

c# - 如何在 ASP.NET 中返回 XML?

c# - 列表框选定项绑定(bind)从源更新

c# - 访问类

c# - 如何在 AsQueryable 方法中使用 'Any'?

asp.net - 静态方法是否适合 Linq To SQL DAL?