0

我目前正在用 c# 开发一个 WPF 项目。该项目采用一个字符串(newMemoryRFID),该字符串在页面初始化时定义并在查询中使用它。像这样

var query = 
            from c in MemoryData.Memory
                    where c.RFID == newMemoryRFID
                    select c;
        this.DataContext = query;
        this.View = ((CollectionView)(CollectionViewSource.GetDefaultView(this.DataContext)));

这会产生一个空的 DataContext

但是,当我使用与 newMemoryRFID 查询相同的测试数据时,即

var query = 
            from c in MemoryData.Memory
                    where c.RFID == "0F02D76B05"
                    select c;
        this.DataContext = query;
        this.View = ((CollectionView)(CollectionViewSource.GetDefaultView(this.DataContext)));

查询得到正确的记录。你可能会说我不是最好的程序员,所以你的答案越简单越好。并提前非常感谢

4

2 回答 2

3

现在是使用调试器的时候了。听起来 newMemoryRFID 在创建查询时未设置为“0F02D76B05”。

如果你不能踏入它,至少做

Debug.WriteLine(string.Format("newMemoryRFID = {0}", newMemoryRFID); 

行前

var query = ...
于 2011-04-15T09:21:59.097 回答
0

尝试在开头和结尾修剪字符串以查找可能导致字符串匹配失败的空格。

于 2011-04-15T14:20:21.520 回答