2010-07-05 4 views
2

지금까지 "네이티브"언어로 된 심각한 DB 프로그래밍을 다루지 않았습니다 (PHP와 같은 웹 기반 언어에 대해 "원시"단어를 사용하고 있습니다. 따라서 C#은 하나라고 가정합니다) 아마도 "나는 다른 단어를 사용해야하지만, 나는 모른다").C# 데이터베이스 예제 프로젝트

따라서 저는 C#에서 DB 응용 프로그램의 좋은 예를 찾고 있습니다.

  • 추가는, 나를 위해
  • 가장 중요한

일의 적절한 방법을 배우는 것입니다

  • 목록 기록
  • 핸들 관계를 제거 편집 기록 : 이 예는 어떻게 표시해야합니다 위의 것들, 예를 들어 - 전체 테이블을 메모리에로드하는 것을 피하십시오 (이봐, 500 000 레코드 [또는 그 이상]))

    내가 찾고있는 좋은 사례는 P4A 데모 - 제품 카탈로그입니다. 이것은 PHP로 작성된 것입니다.) http://p4a.crealabsfoundation.org/demo/

  • +1

    ... C#은 웹 앱에도 사용할 수 있습니다. 웹 기반 응용 프로그램과 데스크탑 응용 프로그램을 구별하고 싶습니까? – FrustratedWithFormsDesigner

    +0

    가능한 [샘플 N 계층 Windows Forms 응용 프로그램 - C# .NET] (http://stackoverflow.com/questions/1781358/sample-n-tier-windows-forms-application-c-net) 중복 가능 –

    +1

    찾고 있습니다. ** 바탕 화면 ** 하나! :) – migajek

    답변

    3

    먼저

    감사합니다 ..., 내가 어떤 정말 좋은 데스크탑/DB 샘플 응용 프로그램의 모르기 때문에 좋은 질문입니다.

    기술을 먼저 선택해야합니다. C#은 단지 언어입니다.

    • 윈폼 + 데이터 집합 (고전 2003 빈티지)
    • 윈폼 + DataReaders에 (더 저수준)
    • 윈폼 + 엔티티 프레임 워크
    • : 당신은 그 선택의 많은 당신을 잎, 바탕 화면을 표시했습니다 WPF + 데이터 집합
    • WPF + 엔티티 프레임 워크
    • WPF + MVVM + 엔티티 프레임 워크
    • 실버 라이트 + 엔티티 프레임 워크
    • ,
    • 실버 라이트 + 데이터 서비스는

    더 많은 조합이 가능하며, 같은 NHibernate에 다른 (제 3 자)으로 ORMs이있다.

    WinForms + Datasets/DataReaders는 가장 오래되고 간단한 기술이지만 OOP는 그다지 중요하지 않습니다. WindowsClient.NET에 많은 작은 샘플과 비디오가 있습니다. VisualBasic 샘플을 간과하지 마십시오.
    작은 응용 프로그램에서는 매우 좋고, 큰 응용 프로그램에서는 적합하지 않습니다.

    엔티티 프레임 워크 (EF)는 최신 버전으로 많은 세부 사항에 대한 (최근) 블로깅입니다. 나는 작지만 다소 오히려 complete sample on MSDN을 발견했다 (그러나 나는 동반 한 기사를 찾을 수 없었다). ORM을 고려해보십시오.
    더 큰 레이어링 및 (단위 테스트)를 지원하므로 대규모 응용 프로그램에 매우 적합합니다.

    +0

    고마워요 :) 사실, 언어 (실제로는 중요하지 않습니다 * 그다지 중요하지 않은 .NET 플랫폼이 여기에 해당합니다. VisualBasic/Managed C++ 읽기를 처리 할 수 ​​있다고 생각합니다.)와 플랫폼. 그 이유는 아주 분명합니다. 나는 다양한 선택을 할 수 있을지 전혀 몰랐습니다. 나는 WPF 나 SilverLight를 모르는 상태에서 WinForms를 유지할 것입니다 ... 또한 WinForms가 내 요구에 맞습니다. EF 예제를 살펴 보겠습니다. 이 합계 주셔서 감사합니다 !! – migajek

    +0

    다른 옵션들도 있습니다. gui tech + Hibernate ("영감을받은 EF"라는 매우 성숙한 오픈 소스 프로젝트)가 떠오릅니다. – roundcrisis

    +0

    WinForms는 저에게 완벽하지만, NHibernate도 살펴볼 것입니다. 하지만 좀 더 ** 예제 **를주세요! :) – migajek

    1

    C#/Net의 코드 플렉스 (예 : MVC 및 EF와 함께 가고 싶다면 MVC 뮤직 스토어)와 다른 많은 웹 사이트에 다양한 예제가 있습니다.

    찾고있는 예제는 현재 구축중인 응용 프로그램에 따라 다릅니다. 당신은 Linq2SQL 또는 EntityFramework (Linq2Entities)를 데이터베이스로 작업 할 수 있습니다. SQL에 익숙하지 않은 경우 (많은 도움이 되겠지만) 또는 System.Data.SqlClient의 클래스를 예로들 수 있습니다.

    위의 작업을 수행 할 수 있습니다.

    +0

    * 많은 예제가 있다는 것을 알고 있지만 적절한 디자인 패턴을 보여주는 적절한 패턴으로 시작하는 것이 중요합니다. SQL을 알고, 순수한 MySQL을 사용하여 꽤 많은 PHP 웹 애플리케이션을 구축했지만, 개발 속도를 높이기 위해 프레임 워크 (ORM/AR)를 사용하기 시작했습니다. – migajek

    +1

    @vic : 하나 이상의 * 적절한 * 디자인 패턴이 있으며 적절한 것으로 간주되는 것은 상황에 따라 다릅니다. 나는 그것이 다소 회피적인 대답이라는 것을 알고있다. 단 하나의 * 정답은 없습니다. – FrustratedWithFormsDesigner

    +0

    여기에 동의합니다. 불행히도 나는 아무도 당신을 정확한 방향으로 여기에서 가리킬 수 있다고 생각하지 않지만 단지 시작점만을 보여줄뿐입니다. 기존의 모든 언어/프레임 워크에 신경 쓰지 않는 한 가지 해결책 만 있다면 (올바른 것) – Padel