2011-09-12 3 views
0

ASP 페이지를 작성한 이후로 매우 오랜 시간이 걸렸습니다. 사실 Classic ASP 였고 이제는 새로운 .NET 버전을 따라 잡기 위해 고심하고 있습니다.SelectParameter 함수에 문자열 전달 asp.net 웹 페이지

문제점 현재 주에만 해당되는 행을 데이터베이스에서 검색하려고합니다. 현재 주 중 어떤 날에 내가 페이지를보고 있는지에 상관없이 현재 주 월요일부터 금까지의 행을 표시해야합니다.

필자는 아래 코드로 시작하여 SqlDataSource "Where"문자열에 삽입 할 두 날짜를 제공합니다. I가 필요

SelectCommand = "SELECT * FROM [Concerts] WHERE ShowDate >= MON AND ShowDate <= Fri" > 

의 SqlDataSource SelectCommand에 기능 :

Dim Mon As DateTime 
    Dim Fri As DateTime 
    Dim daysDiff As Integer 
    daysDiff = 2 - Weekday(DateTime.Today) 
    Mon = DateAdd("d", daysDiff, DateTime.Today) 
    Fri = DateAdd("d", 4, Mon) 

지금 내 문제는 내가 ASP에 삽입 "월"과 "금"의 값을 잡아하는 방법을 몰라 나는 거기에 당신에게 전문가 상당히 간단해야이 한 가지를 얻으려고 며칠이에서왔다으로

SelectCommand = "SELECT * From [Concerts] WHERE ShowDate >= 09/12/2011 AND ShowDate <= 09/16/2011"> 

귀하의 도움에 감사드립니다 :로 해결.

답변

0

가장 간단한 방법은 SqlDataSource에서 사용중인 매개 변수의 DefaultValue을 설정하는 것입니다.

예 :

<asp:sqlDataSource ID="ConcertsSqlDataSource" 
    SelectCommand="SELECT * From [Concerts] WHERE ShowDate >= @StartDate AND ShowDate <= @EndDate" 

    ConnectionString="<%$ ConnectionStrings:NorthwindConnection %>" 
    OnInserted="EmployeeDetailsSqlDataSource_OnInserted" 
    RunAt="server"> 

    <SelectParameters> 
    <asp:Parameter Name="StartDate" Type="DateTime" /> 
    <asp:Parameter Name="EndDate" Type="DateTime" /> 
    </SelectParameters> 
</asp:sqlDataSource> 

코드 뒤에 (이 C#을하지만, VB.NET에서 유사해야합니다) 그 후

ConcertsSqlDataSource.SelectParameters["StartDate"].DefaultValue = Mon.ToString(); 
ConcertsSqlDataSource.SelectParameters["EndDate"].DefaultValue = Friday.ToString(); 

할 수 있습니다 중 하나 DataBind() 당신이 그것을 첨부했습니다 제어 또는 코드 뒤에 결과를 처리하십시오.

0

다음을 수행 할 수 있습니다 .. ASPX 페이지를 편집하십시오. 내가 SqlDataSource와 멀리

SqlDataSource1.SelectParameters["MON"].DefaultValue = Convert.ToString(Mon); 
SqlDataSource1.SelectParameters["FRI"].DefaultValue = Convert.ToString(Fri); 
SqlDataSource1.DataBind(); 

은 일반적으로 ..

SelectCommand="SELECT * FROM [Concerts] WHERE (([ShowDate] &gt; @MON) AND ([ShowDate ] &lt; @FRI))"> 
     <SelectParameters> 
     <asp:Parameter Name="MON" DefaultValue="" Type="DateTime" /> 
     <asp:Parameter Name="FRI" DefaultValue="" Type="DateTime" /> 
     </SelectParameters> 

를 이제 다음을 추가 할 수 있습니다 뒤에 코드에서와 DataSets- http://msdn.microsoft.com/en-us/library/system.data.dataset.aspx

를 사용 다음과 같이 SELECT 명령 읽기 확인
+0

데이터 세트를 사용하여 어떻게 동일한 결과를 생성합니까? 미안해, 나는 진정한 초보자이며, 배우는 길을 찾고있다. – ZitoMD