2014-11-03 2 views
0

asp.net 응용 프로그램을 개발 중입니다. 몇 가지 이유 때문에 목록과 같은 C# 컬렉션에 내 테이블의 특정 열을 복사하고 싶습니다.C# 목록의 Oracle 테이블 내용 복사

다음 필드가있는 Users라는 테이블이 있습니다. 이름, 성, 나이. 나는이 기록의 목록을 원합니다 (이름과 성 필드 만).

는 그래서 클래스 User.cs 생성 :

public class User { 
    public string name{ get; set; } 
    public string surname{ get; set; } 
} 

을 그리고 이것은 내 내가 DB를 객체가있는 방법이 없습니다 나는이 작동하지 않습니다 내 home_page.aspx.cs에서 시작했는지 쿼리 :

List<User> oracleList; 
     using (var db = new OracleConnection(connectionString)) 
     { 
      db. 
      oracleList = db.Query<User>("SELECT NAME, SURNAME FROM USERS"); 
     } 

답변

0

OracleConnection은 더 이상 사용되지 않습니다. http://go.microsoft.com/fwlink/?LinkID=144260
는 아마 가장 좋은 방법은 아니지만, 작동 :

 SqlConnection conn = new SqlConnection(connectionString); 
     List<User> oracleList = new List<User>(); 
     string cmd = "SELECT name,surname FROM users"; 
     DataSet ds = new DataSet(); 
     SqlDataAdapter dAdapter = new SqlDataAdapter(cmd, conn); 
     try 
     { 
      conn.Open(); 
      dAdapter.Fill(ds); 
      for (int i = 0; i < ds.Tables[0].Rows.Count; i++) 
      { 
       User user =new User(); 
       user.name=ds.Tables[0].Rows[i]["name"]; 
       user.surname=ds.Tables[0].Rows[i]["surname"]; 
       oracleList.add(user); 
      } 
     } 

     catch (Exception ex) 
     { 
      //do something 
     } 
     finally 
     { 
      conn.Close(); 
     }