BizTalk 도우미 클래스에서 SQL Server 저장 프로 시저를 직접 호출 할 때 발생할 수있는 부작용 및 위험은 무엇입니까?BizTalk 도우미 클래스에서 저장 프로 시저를 직접 호출 할 때 발생할 수있는 부작용은 무엇입니까?
나는 몇 가지 코드를 확인하고 같은 사례를 발견했습니다 ... BizTalk 개발의 측면에서 "나쁜 냄새"처럼 보인다
private static void SaveInvoice(long id, string fileName)
{
try
{
using (SqlConnection sqlConnection = new SqlConnection("... server ..."))
{
sqlConnection.Open();
sqlCommand = new SqlCommand("usp_SaveDocument", sqlConnection);
sqlCommand.CommandType = CommandType.StoredProcedure;
sqlCommand.Parameters.AddWithValue("@Id", id);
sqlCommand.Parameters.AddWithValue("@FileName", fileName);
sqlCommand.ExecuteNonQuery();
}
}
finally
{
sqlCommand.Dispose();
}
}
.
"도우미"코드에서 이와 같은 직접 데이터베이스 호출을 수행 할 때 실제 위험이나 제한이 있습니까?
응답 해 주셔서 감사합니다.나는 도우미에서 데이터베이스 연결을 숨기고 (웹 서비스 호출도 찾았습니다.) BizTalk는 아무 것도 모르고 있으므로 불리한 상호 작용이있을 수 있습니다. – SteveC
대용량 상황에서 어떤 일이 발생하는지, 스레딩, 즉 도우미 클래스 스레드가 안전합니까? 각 스레드가 자신의 연결을 열어 줍니까? 이로 인해 문제가 발생할 수 있습니다. 그러나 헬퍼 클래스를 사용해야하는 상황이 있습니다. http://stackoverflow.com/questions/20644569/how-do-you-configure-a-biztalk-wcf-sql-adapter-to-get-data- from-a-sql-server-201 – Dijkgraaf