2012-10-22 3 views
0

에서 작동하지 않는 잘 작동하는 것 같다 :패스 매개 변수는 나는 다음과 같은 한이 상황

<asp:SqlDataSource ID="WtrClientDS" runat="server" ConnectionString="<%$ ConnectionStrings:ProgSQL %>"> 

</asp:SqlDataSource> 
다음에서 .aspx 파일에서

protected void menu_ItemClick(object sender, Telerik.Web.UI.RadMenuEventArgs e) 
{ 
    string value = (e.Item.Value).ToString(); 
    WtrClientDS.SelectCommand = "SELECT * from Prog where ProgId = " + value; 
} 

: 내 .cs 파일에서

언급했듯이 위의 내용은 정상적으로 작동하지만 모범 사례는 아닙니다.

무엇처럼 대신 할 수있는 것은 나는 다음과 같은 있지만 작동하지 않는 같은에서 .aspx 파일의 내부 select 명령이 뭔가 :의 안쪽 .cs의 내부

파일

 protected void menu_ItemClick(object sender, Telerik.Web.UI.RadMenuEventArgs e) 
    { 

      string value = (e.Item.Value).ToString(); 
      // changed below per input from user but still does not work. 
      WtrClientDS.SelectParameters.Add(new Parameter("LocId", System.TypeCode.String, value)); 
    } 

.aspx 파일 :

 <asp:SqlDataSource ID="WtrClientDS" runat="server" ConnectionString="<%$ ConnectionStrings:ProgSQL %>" 
     SelectCommand = "SELECT * from Prog where ProgId = @LocId"> 

    <SelectParameters> 
     <asp:Parameter Name="LocId" Type="String" /> 
    </SelectParameters> 
</asp:SqlDataSource> 

위의 내용은 단순히 작동하지 않습니다. 오류는 발생하지 않지만 단순히 작동하지 않습니다. 나는 또한 그것을 더 선호하는 방법/이상적인 방법인지 알고 싶었습니다. 새로운 SQLDataSource 사용

+0

나는 당신의 제목을 편집했습니다. "[제목에"태그 "가 포함되어 있어야합니까?] (http://meta.stackexchange.com/questions/19190/)"합의가 "아니오, 그렇지 않아야합니다"로 표시되어야합니다. –

답변

1

봅니다 :

protected void menu_ItemClick(object sender, Telerik.Web.UI.RadMenuEventArgs e) 
{ 
     string value = (e.Item.Value).ToString(); 
     string strConn = ConfigurationManager.ConnectionStrings["ConnectionStrings:ProgSQL"].ConnectionString; 

     SqlDataSource WtrClientDS = new SqlDataSource(); 
     WtrClientDS.ConnectionString = strConn; 
     WtrClientDS.SelectCommand = "SELECT * from Prog where ProgId = @LocId" 
     WtrClientDS.SelectParameters.Add(new Parameter("LocId", System.TypeCode.String, value)); 

     //refresh your control 
     WtrClients.DataSource = WtrClientDS.Select(DataSourceSelectArguments.Empty); 
     WtrClients.Rebind(); 
} 
+0

감사합니다. 오류가 발생했습니다 형식 또는 네임 스페이스 이름 '매개 변수'를 찾을 수 없습니다 (사용 지시문 또는 어셈블리 참조가 누락 되었습니까?) –

+0

using에 Using using System.Web.UI.WebControls;를 추가하십시오. –

+0

감사합니다. 나는 그랬지만 여전히 작동하지 않습니다. 내가 볼 수있는 .aspx 파일에 누락 된 것이 있습니까? –