2012-06-13 2 views
0
Dim sql1 As String = ("EXEC [dbo].[usp_GetReportData_All] @ReportID=N'{0}', @StartDate=N'{1}' @EndDate=N'{2}', @StartDate2=N'{3}' @EndDate2=N'{4}'", repotid1, startdata1, EndDate1, StartDate3,Enddate3) (this is what I tried to do in VB.net) 

일반적으로 나는이 코드 줄을 문자열에 저장 한 다음 해당 문자열을 사용하여 저장 프로 시저를 데이터 테이블에 실행합니다. 분명히 vb.net이 형식을 좋아하지 않는 것 같아서이 줄을 vb.net의 문자열에 저장할 수 있는지 궁금한가요저장 프로 시저를 C#에서 VB.net으로 변환

Oops 실수는 C#에서하는 것입니다.

string srcSQL = string.Format(then the line in parans up there) 

답변

1

(http://msdn.microsoft.com/en-us/ 라이브러리/aa324760 (v = vs.71) .aspx)을 사용하면 다음과 같이 사용할 수 있습니다.

Console.WriteLine("Grand total:\t{0,8:c}", Total);

Dim total As String 
    Dim result As String 
    total = "1000" 
    result = String.Format("restulado {0}", total) 
    MsgBox(result) 

에 대한 VAR의 총은 통화

0

사용 및 String.format ("YourSQLText", parameter0, 매개 변수 1)

당신이 Console.Writeline의 예에서 볼 수 있듯이
+1

이 실제로하지 말아야 할 무엇의 좋은 예와 같이 포맷됩니다. string.format을 사용하여 SQL 쿼리를 구성하지 마십시오. [매개 변수가있는 쿼리] (http://msdn.microsoft.com/en-us/library/bb738521.aspx)를 사용하십시오. –

+0

SQL 쿼리를 문자열로 포맷하지 않는 특별한 이유가 있습니까? – nhat

+0

당신은 SQL 주입의 희생자가 될 수 있습니다. 그러나 나는 왜 부정적인 포인트 하하하인지, 형식에 관한 문제인지, 최선의 방법인지에 관해서는 알지 못합니다. – crassr3cords

관련 문제