2011-05-12 7 views
0

VB6에서 C# 줄을 변환하고 꽤 어려움을 겪고 있습니다.VB6에서 변환 # C#에서 VB6로 변환 - 레코드

VB6 코드 :

txtFields(4).Text = rsGroup.Fields(0).Value + 1 

C 번호 : (나는 지금까지 무엇을)

txtFields4.Text = (rsGroup.Fields[0].Value) +1); 

이 작업을 수행하는 올바른 방법은 무엇입니까?

+2

은 구체적인 예에 ​​어려움이 무엇입니까? – Oded

+0

C# 예제에는 끝에 여분의 괄호가 있습니다. 또한 귀하의 VB 코드는 텍스트 필드의 배열을 가지고 있으며, 귀하의 C#은 txtField4라는 텍스트 필드를 가지고있는 반면, 인덱스 4의 텍스트 필드에 액세스하고 있습니다. 그게 의도적 인거야? 나는 궁금하다. 객체 rsGroup의 C# 타입은 무엇인가? – enamrik

+0

'값'유형은 무엇입니까? 문자열에 정수를 추가하려고합니까, 아니면 2 개의 정수를 추가하여 문자열 속성에 넣고 있습니까? –

답변

0

레코드 세트를 사용하지 않고 대신 데이터 세트를 사용합니다. System.Data.SqlClient 네임 스페이스를 사용하면 데이터베이스에 액세스 할 수 있으며 DataSet에서 컨트롤을 바인딩하여 훨씬 쉽게 사용할 수 있으며 VB6에서 직접 코드를 복사하지 않아도됩니다. C#의 세계에는 VB6에서 이전에 사용하지 않았던 새로운 기능이 많이 있습니다.

+0

안녕하세요 Robbie, 데이터 세트 솔루션 사용을 고려 중입니다. 나는 그것을 살펴볼 것입니다 - 여기에있는 진짜 어려움은 C# 지식이 없다는 것입니다. java 만 - 관리자가 이전 데이터베이스 비교 도구의 변환을 요청했습니다. – jdurman

0
txtFields[4].Text = rsGroup.Fields[0].Value + 1; 
+0

안녕하세요 enamrik, rsGroup에 대한 C# 형식은 ADODB.Recordset입니다. – jdurman

1

@jdurman,

있는 데이터 집합을 사용하여 데이터를 검색 예 :

public DataSet GetDate(string SqlString) 
{ 
SqlConnection sqlConn = new SqlConnection("CONNECTION STRING GOES HERE"); 
DataSet ds = new DataSet(); 

SqlDataAdapter adapter = new SqlDataAdapter(SqlString, sqlConn); 
adapter.Fill(ds); 

return ds; 

} 

public void LoopThroughDataExample(DataSet ds) 
{ 
foreach(DataTable dt in ds) 
{ 
foreach(DataRow dr in dt) 
{ 
Console.WriteLine(String.Format("Value is: {0}", dr["DBColumnName"])); // Replace DBColumnName with the name of columns in the Database Table that you want to Extract. 
} 
} 

} 
+0

로비에 도와 줘서 고마워 로비! 나는이 주된 관심사가 있는데,이 프로그램을 사용하고있는 데이터베이스는 주류 (SQL/MSAccess 등)가 아니라 HABITAT (http://www.ponge.com/telechargements/habitat.pdf)이다. 내가 변환과 함께 할 수있는만큼 시도하려고 생각합니다. 서식 파일을 사용하여 DB에 액세스 할 수있는 방법을 배웁니다. – jdurman

관련 문제