2013-02-06 4 views
0

두 가지 웹 메소드를 호출하는 웹 서비스가 있습니다.파일에서 데이터베이스 연결을 설정하는 대신

하나의 방법은 SQL 서버 연결을 사용하고 다른 하나는 DB2을 사용합니다.

ODBC 연결은 DB2 데이터베이스와 SQL 서버 모두와 통신 할 수 있지만 SQL은 각 방법마다 약간 다르게 설계되어야하므로 연결을 전환하는 옵션이 필요합니다.

지금 당장 나는 서버에 저장된 텍스트 파일에서 문자열 값을 읽는 해결책을 가지고 있습니다.

문자열이 SQL이면 SQL 연결 문자열을 사용하고 ODBC는 ODBC 연결 문자열을 사용합니다.

웹 메소드가 호출 될 때마다 파일을 읽지 않고도이 작업을보다 효율적으로 수행 할 수 있습니까? 실제 환경에서는 대량의 데이터가 전송 될 우려가 있습니다. 그래서 내 관심은이 방법을 사용하는 속도와 성능에 있습니다.

String DBconSQL = "SQL-connection-string"; 
String DBconODBC = "ODBC-connection-string";  
string connection = System.IO.File.ReadAllText(@"filePath"); 


    [WebMethod] 
    public string stringRETURN(string connection) 
    { 
     if(connection == "SQL") 
     { 
     string con = "DBconSQL"; 
     string sql = "SQL" 

     } 
     if(connection == "ODBC") 
     { 
      con = DBconODBC; 
      sql = "ODBC SQL"; 

     } 

       //Do stuff here 
    } 

답변

0

왜 그냥 읽거나 그냥 코드에 저장 첫 번째 파일 후 메모리에 각각의 값을 저장하지 않습니다 -이 구현 한 방법

예.

static class Globals 
{ 
    public static string DB2ConnStr = String.Empty; 
    public static string MSSQLStr = String.Empty; 
} 

읽고 어디에서 이들을 작성하고 서버가 같이 그들이 (즉, 응용 프로그램은 응용 프로그램 도메인에서 실행되는)

당신해야 또한 (오래 지속됩니다 수 있습니다 코드 또는 텍스트 문서에 일반 텍스트 자격 증명을 저장하는 보안 문제를인지하고 (프로덕션 용인 경우) 데이터베이스에 액세스하는 데 사용되는 계정의 암호화/보안/사용자 권한을 줄입니다.)

+0

어떻게하면 m 첫 번째 파일을 읽은 후에 모리가 표시되고 파일이 변경되면 어떻게됩니까? 이 방법으로 보안 결함을 고려했습니다. – Ebikeneser

+0

편집 @Jambo –

+0

파일이 변경된 시점을 기준으로 변수를 변경하는 것은 조금 어렵지만 지나치게 많지는 않습니다 - http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx –

관련 문제