목표 : 값을 전달, 즉, SQL DB의 정수이며, 텍스트 값을패스 평가 정수 속으로 기능
문제를 반환 : 나는로 .toString 넣어 것 같다 함수에 평가에서 값을 얻으려면 which는 숫자가 아닌 문자열입니다. 아래와 같이 convert.toint32를 시도해도 값이 전달되지 않습니다. 나는 .tostring으로 끝내려고했다.
확인 : 평가가 없으면 그리드에 숫자가 표시되고 변환없이 .tostring을 사용하면 번호가 문자열이 될 수 없으므로 문자열을 통과 시키며 검색을 실패합니다. !
나는 다양한 포럼 토론에보고하지 적어도 Converting value of an Eval from int to string
코드 :
에서 .aspx
<%# RiskIDToText(Convert.ToInt32(Eval("RiskID")))%>
.aspx.vb
Public Function RiskIDToText(ByVal vRiskIDString As Integer) As Integer
Dim vString As String = ""
Dim sConnString As String = System.Web.Configuration.WebConfigurationManager.ConnectionStrings("SQL").ConnectionString
Dim dsNames As SqlDataSource
dsNames = New SqlDataSource
dsNames.ConnectionString = sConnString
Dim sSQL As String
sSQL = "SELECT RiskCategories,RiskCatID FROM TblRisks_Categories WHERE RiskCatID = '& vRiskIDString & '"
dsNames.SelectCommand = sSQL
For Each datarow As Data.DataRowView In dsNames.Select(DataSourceSelectArguments.Empty)
vString = datarow("RiskCategories").ToString
Next
Return vString
End Function
값은 비록 온다 나는 "문자열로"넣을 경우 내가 얻을 - 각 행의 경우에 "varchar 값 '& vRiskIDString &'을 데이터 유형 int로 변환 할 때 변환이 실패했습니다." – indofraiser
정수 및 문자열을 변경 한 다음 작동합니다. 두 번째 코드 줄이 필요 없습니다. 이제는 vString이 문자열 인 것처럼 잘못된 유형이라고 말합니다 ... : -S – indofraiser
어떤 줄에서 오류가 발생합니까 ??? vString = 또는 vString을 반환 하시겠습니까 ?? – Ranhot