【问题标题】:IQueryable with RadioButtonList.SelectedValueIQueryable 与 RadioButtonList.SelectedValue
【发布时间】:2015-12-10 13:51:31
【问题描述】:

我可以在IQueryable 中使用RadioButtonList 中的选定值从表中获取选定值吗?

我有RadioButtonListDataValueField="Code"

我的代码是

public IQueryable<Tbl_name> GetValuesfromTable()
{
    return dbo.Tbl_name.Where(q => q.Code = (RadioButtonList.SelectedItem.Value)).OrderBy(c => c.Date_publication);
}

请问您能帮我解决这个问题吗?

【问题讨论】:

  • 为什么需要OrderBy?您是否收到错误消息?什么错误?
  • 它确实有效:返回 dbo.Tbl_name.Where(q=>q.Code== 1) 。 Order by 不是必需的..但是我不能使用 RadioButtonList 中的值...
  • 当您尝试使用 RadioButtonList 中的值时会发生什么?
  • 我更新了答案,试试吧。

标签: c# asp.net code-behind iqueryable radiobuttonlist


【解决方案1】:

如果您想从该表中获取单个值。我正在考虑将 Code 序列化为 int:

public IQueryable<Tbl_name> GetValuesfromTable()
{
    var selectedCode = Convert.ToInt32(RadioButtonList.SelectedValue);
    return dbo.Tbl_name.Where(q => q.Code == selectedCode)
        .OrderBy(c => c.Date_publication);
}

【讨论】:

  • 错误是 ..“不能隐式地将类型 'string' 转换为 'int' 。但是我尝试了 Convert.ToInt32(RadioButtonList.SelectedItem.Value) 并且也不起作用......收音机bautton 值通常是一个数字....我试过 return dbo.Tbl_name.Where(q=>q.Code== 1) 有效...
  • 实际上我想从那个 Table_name 中获取一个值列表( GridView )。但只有在 Code 等于 RadiobuttonList 中的值的情况下...
  • Convert.ToInt32 放在 LINQ 查询之外。查看更新的答案。
  • 非常感谢...它几乎可以工作了..稍加修正后我又添加了一个 == 所以现在它是 (q => q.Code == selectedCode).... 但是在我的情况下,这个查询的结果应该感觉到 GridView。当我插入一个固定数字时,例如 (q => q.Code == 5 ) 等。所以它会填充我的网格视图,但变量 selectedCode 不会。我的 RadiobuttonList 有 AutoPostBack="true" ;我的网格 SelectMethod="GetValueFromTable" 但仍然有问题..我仍在尝试解决它,但我不能..也许我应该以某种方式将此函数中的数据绑定到 gridView SelectedIndexChanged?
猜你喜欢
  • 2013-09-03
  • 1970-01-01
  • 2020-04-28
  • 2011-01-20
  • 2011-06-09
  • 2014-11-09
  • 1970-01-01
  • 2014-02-12
  • 2015-03-12
相关资源
最近更新 更多