0

我正在尝试使用asp:SqlDataSource带有参数的 SQL 选择驱动。只要我没有任何论据,它就可以工作。我可以通过工作室运行参数化查询,它可以工作并返回行。如果我有任何论点,则asp:View不会呈现。

首先,当我通过 Studio 执行 SQL 时,代码返回 2 行。其次,我不希望它作为存储过程。部署问题。微笑,放手。:-)


<asp:DropDownList ID="lstUsers" runat="server" DataSourceID="sqlGetCSGUsersOnClaim" DataTextField="username" DataValueField="userID" />

<asp:SqlDataSource ID="sqlGetCSGUsersOnClaim" runat="server" ConnectionString="<%$ ConnectionStrings:SiteSqlServer%>" SelectCommandType="Text" SelectCommand="
SELECT aspnet_Users.UserId as userID, aspnet_users.username as username
FROM claims, aspnet_Users
WHERE claims.claimid = @ClaimID and 
(Claims.AdjusterID = aspnet_Users.UserId or Claims.SupervisorID = aspnet_Users.UserId )">
<SelectParameters>
   <asp:SessionParameter Name="ClaimID" SessionField="ClaimID" Type="Int32" DbType="Int32" />
</SelectParameters>
</asp:SqlDataSource>

如果我删除@ClaimIDandSelectParameters参数,则会填充下拉列表。只有在我添加参数后才会失败。

我究竟做错了什么?

在此先感谢,杰森

4

1 回答 1

0

好吧,如果我删除了 SelectParameter 的 Type 和 DBType 属性,代码就可以工作了。叹....

我不知道,为什么。

于 2012-05-02T05:23:09.290 回答