2014-05-18 3 views
0

.net C# 기반 데스크톱 기반 응용 프로그램을 개발 중입니다 ... 그리고 m 종류의 저장 프로 시저 내에서 쿼리를 작성할지 아니면 내 .cs 파일 자체에서 작성할지 결정하는 데 어려움이 있습니다. 데스크톱 응용 프로그램은 검색/필터/보고서 쿼리를 많이 가지고 .... 그리고 개발 후 나는 온라인으로 인터넷에서 호스팅되는 서버에 내 응용 프로그램의 데이터베이스를 이동해야 .... 그래서 하나의 비용은 서버와저장 프로 시저 또는 쿼리를 C# 파일에 작성

PS ..

나는 당신이 당신의 ANS를 elobrate 기쁘게 요청 ..... 거래에서 더 효율적입니다 : 난 아무것도가 잘못 인 경우 초보자가 사과를 development..so하기입니다 :)

+0

그래서 그것은 재미 없다는 것을 기반으로 한 의견입니다. 좋은면과 엄청난 양의 완전히 바보 같은 주장이 양측에 사용되었습니다. 초보자이기 때문에 Entity Framework를 처음부터 사용하고 거기에서 가져 오는 것이 좋습니다. – TomTom

답변

0

제 생각에 당신이있는 상황에 크게 의존합니다. 코드 파일 (C#)에 쿼리를 입력하면 코드가 변경 될 때마다 모든 프로그램을 다시 컴파일하고 게시해야합니다 아주 시간과 에너지를 소비하는 프로세스 인 몇 번이고 반복되는 경우 프로젝트가 실패 할 수도있는 매우 어려운 상황에 직면하게됩니다.

초보자로서 비즈니스 규칙 및 저장 프로 시저에서 코드 파일을 분리하는 것이 좋습니다.

0

자주 선호하는 문제입니다. 간단히 쿼리 (즉, 연락처에서 ID를 선택)에 대해 필자는 보통 ORM으로 dapper를 사용하여 인라인으로 작성하고 그런 식으로 작업하게되어 매우 기쁩니다.

더 복잡한 쿼리, 즉 복잡한 정렬, 필터 등이 많은 다중 테이블 조인의 경우 SP에 코드를 넣고 결과를 얻으려는 경향이 있습니다 (다시 깔끔하게).

C#에서 sql을 빌드하고 SP를 실행하여 SP를 실행하는 것과 SP를 실행하는 것과 약간의 차이가있는 경우가 있습니다.

종종 사용자의 기술과 생산 시스템에 대한 액세스가 저하됩니다. 더 큰 매장에서는 프론트 엔드 개발자가 엄격한 배포 프로세스를 거치지 않고 DBA 게이트 키퍼를 거치지 않고도 프로덕션에서 저장 프로 시저를 수정할 수있는 능력은 거의 없습니다. 이렇게하면 (더 좋거나 나쁨) 경향이있는 개발자가 데이터베이스 대 프론트 엔드로 더 많은 코드 이동. 한편

, 프런트 엔드 및 백엔드에 대한 완전한 무제한 액세스 할 수있는 경우, 때때로 그것의 좋은이 정말로 당신의 코드를

을 다시 배포 할 필요없이, 생산에서 저장 프로 시저를 조정할 할 수 있도록 올바른 길 (또는 잘못된 길) - 그것은 많은 것들에 달려 있습니다.

+0

많은 답변을 주셨습니다 ... –