Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 控件不存在';在页面加载时使用空参数绑定到SqlDataSource_Asp.net_Sqldatasource - Fatal编程技术网

Asp.net 控件不存在';在页面加载时使用空参数绑定到SqlDataSource

Asp.net 控件不存在';在页面加载时使用空参数绑定到SqlDataSource,asp.net,sqldatasource,Asp.net,Sqldatasource,假设您有一个如下所示的SQLDataSource: <asp:SqlDataSource ID="sqldsSample" runat="server" ConnectionString="<%$ ConnectionStrings:myConnectionString %>" SelectCommand="SELECT [col1], [col2] FROM [tbl] WHERE [col3] = @val) ORDER BY [col1] DESC;"

假设您有一个如下所示的SQLDataSource:

<asp:SqlDataSource ID="sqldsSample" runat="server" 
    ConnectionString="<%$ ConnectionStrings:myConnectionString %>" 
    SelectCommand="SELECT [col1], [col2] FROM [tbl] WHERE [col3] = @val) ORDER BY [col1] DESC;">
    <SelectParameters>
        <asp:Parameter DefaultValue="False" Name="val" Type="Boolean" />
        <asp:Parameter DefaultValue="" Name="val2" Type="String" />
    </SelectParameters>
</asp:SqlDataSource>

假设您已经决定在此处声明'val2'参数,并且不想在后面的代码中添加和/或删除参数(例如,更改SelectCommand以使用一些额外条件进行过滤)


它将在没有错误的情况下失败-控件将显示为空。

即使未使用该参数,也必须为其指定默认值。例如,只需输入空格字符即可:


请注意,如果省略DefaultValue属性,它仍然不起作用。

SqlDataSource上还有
CancelSelectOnNullParameter
参数-如果希望任何参数为null,则需要将其设置为false

这不是很明显,它已经抓住了我好几次了