【问题标题】:how do I resolve 'not all code paths return data'?如何解决“并非所有代码路径都返回数据”?
【发布时间】:2015-09-11 17:18:35
【问题描述】:
   private DataSet getData(HiddenField sDate, HiddenField eDate)
{

    jQueryUICalendar1.Text = sDate.Value;
    jQueryUICalendar2.Text = eDate.Value;

}

<label>Report Start Date:&nbsp;<asp:HiddenField ClientIDMode="Static" runat="server" Visible="true" id="sDate"  Value="" /><asp:TextBox runat="server" inputtype="Date" size="25" value="Click to select start date..."  ID="jQueryUICalendar1" ControlID="jQueryUICalendar1" TextMode="SingleLine" MaxLength="10" Rows="1" ClientIDMode="Static" AutoPostBack="True" ViewStateMode="Enabled"></asp:TextBox></label>
        &nbsp;<label>Report End Date:&nbsp;<asp:HiddenField ClientIDMode="Static" runat="server" Visible="true"  id="eDate" Value=""  /><asp:TextBox runat="server" inputtype="Date" size="25" value="Click to select end date..." ID="jQueryUICalendar2" ControlID="jQueryUICalendar2" TextMode="SingleLine" MaxLength="10" Rows="1" ClientIDMode="Static" AutoPostBack="True" ViewStateMode="Enabled"></asp:TextBox></label>

我试图弄清楚为什么“getData”没有从 HiddenField 返回值。我需要对我的 c0de 做什么才能让 getData 返回适当的值(例如,jQueryUICalendar1、jQueryUICalendar2)

【问题讨论】:

  • private void getData 在你的代码中你说你想从getData返回一个DataSet,但是那个函数没有返回值所以你声明它返回无效
  • 在有人问之前,有问题的页面(*.aspx、*.aspx.cs)包含一个带有两个文本框(例如,startDate、endDate)的表单。当用户选择 startDate (textbox1) 和 endDate (textbox2) 时,这些值需要进入您在我的代码(上图)中看到的 HiddenField,以便它们可以作为变量传递给 MySQL。
  • @Steve --- 说“字段不能有 void 类型。”
  • @Steve -- 如果我这样做:private void getData,那么 VS 接受代码。虽然xD仍然不知道它是否有效

标签: c# asp.net


【解决方案1】:

问题是您声明了“DataSet”的返回类型,但您的函数没有返回值。要么将返回类型更改为 void(这意味着没有返回类型),要么让你的函数返回正确的类型/值。

【讨论】:

  • 也许我没有提到我是一个 C# 菜鸟? -HOW- 我如何获得正确的类型/值?
  • @Cryptik perhaps I failed to mention I'm a C# noob? 你尝试在不了解基本知识的情况下编写代码。在继续之前,我会阅读一些文档......
  • @Eser -- 我读过文档。我会继续阅读文档,但是,作为一个使用 C# 的经验不到 2 个月的人,我想我会向更有经验的人询问此事。
  • 我必须同意最好进行一些研究/阅读。了解一种语言的核心数据类型是使用该语言的基础。至少能够找到资源来了解它们:[msdn.microsoft.com/en-us/library/…你真的想要从这个函数返回任何东西还是目标是做“某事”?
  • @William_Wilson -- (“你真的想要从这个函数返回任何东西,或者目标是做'某事'吗?”)我想要这个函数做的是获取值(开始& 结束日期),用户使用 jQueryUICalendar 选择并在我构建的 GridView 中显示这些日期范围。
【解决方案2】:

由于您没有返回DataSet,请将您的方法返回设置为void

private void getData(HiddenField sDate, HiddenField eDate)  // <  -- return void
{
    jQueryUICalendar1.Text = sDate.Value;
    jQueryUICalendar2.Text = eDate.Value;
}

要么这样,要么只返回DataSet

private DataSet getData(HiddenField sDate, HiddenField eDate)
{
    jQueryUICalendar1.Text = sDate.Value;
    jQueryUICalendar2.Text = eDate.Value;

    DataSet myReturn = new DataSet();
    // Do things with myReturn
    return myReturn;
}

【讨论】:

  • --- 非常感谢您的帮助!谢谢!
猜你喜欢
  • 2021-05-04
  • 2021-06-08
  • 2018-12-28
  • 2011-12-17
  • 1970-01-01
  • 2016-03-18
  • 1970-01-01
相关资源
最近更新 更多