在 WCF Windows Phone 中强制转换查询时出现错误结果

本文关键字:查询 结果 错误 转换 Windows WCF Phone | 更新日期: 2023-09-27 17:57:08

基本上,当我尝试将查询结果移动到可用格式时,我得到诸如"systems.collections.whatever"之类的输出

相反,我希望返回实际数字。这就是我选择我想要的值的方式

 listBox2.DisplayMemberPath = "MonthlyHourLimit";
            listBox2.ItemsSource = e.Result;
            if (this.listBox2.Items.Count > 0)
                this.listBox2.SelectedIndex = 0;
            limit = listBox2.SelectedItem.ToString();

我应该得到"156",但我得到"Timesheet_System.userDataService.UserData"

在 WCF Windows Phone 中强制转换查询时出现错误结果

ListBox.SelectedItem 的类型为 object ,任何对象的ToString()都是类型名称。

若要获取实际的字符串值,需要先将listBox2.SelectedItem转换为数据类型。

我假设您的SelectedItemUserData 型,基于它给你的名字.ToString(),所以使用这样的东西:

((UserData)listBox2.SelectedItem).ToString();

或者,如果您希望limit等于DisplayMemberPath

((UserData)listBox2.SelectedItem).MonthlyHourLimit;