>백엔드 개발 >C++ >Entity Framework를 사용하여 저장 프로시저에서 데이터를 검색하고 GridView를 채우려면 어떻게 해야 합니까?

Entity Framework를 사용하여 저장 프로시저에서 데이터를 검색하고 GridView를 채우려면 어떻게 해야 합니까?

Barbara Streisand
Barbara Streisand원래의
2024-12-29 18:14:10979검색

How Can I Retrieve Data from a Stored Procedure Using Entity Framework and Populate a GridView?

Entity Framework를 사용하여 저장 프로시저에서 데이터에 액세스

이 문서에서는 Entity Framework 6.1을 사용하여 동적 SQL 저장 프로시저에서 데이터를 검색하는 문제를 다룹니다. .1. 목표는 검색된 데이터로 GridView 컨트롤을 채우는 것입니다.

이 시나리오에는 검색어를 매개 변수로 받아들이고 동적 SQL 쿼리를 기반으로 결과 집합을 반환하는 SearchProducts라는 저장 프로시저가 포함됩니다. C# 코드는 저장 프로시저를 실행하고 결과를 GridView 컨트롤에 바인딩하려고 시도합니다.

문제

코드가 실행되면 저장 프로시저가 다음에서 작동합니다. 데이터베이스 탐색기는 실행 중인 애플리케이션에서 실패하고 IEnumerable DataSet 대신 -1을 반환합니다. 이는 데이터가 성공적으로 검색되지 않음을 나타냅니다.

해결 방법

이 문제를 해결하려면 저장 프로시저를 엔터티의 함수로 가져와야 합니다. 모델. 단계는 다음과 같습니다.

  1. 엔티티 모델의 작업 영역을 마우스 오른쪽 버튼으로 클릭하고 추가 -> 함수 가져오기.
  2. 함수 가져오기 추가 대화 상자에서:

    • 함수 이름(예: Search_Products)을 입력합니다.
    • SearchProducts 프로시저를 선택합니다. 드롭다운 목록에서
    • 반환 값을 엔터티로 설정하고 드롭다운 목록입니다.
  3. C# 코드 업데이트:

    • Entity 개체의 함수 이름(Search_Products)을 사용하여 저장 프로시저를 실행합니다. .
    • 결과를 GridView에 바인딩 control.

수정된 코드:

var db = new MyEntities();
var TEST_SEARCH_TERM = "product";
var result = db.Search_Products(TEST_SEARCH_TERM);

MyGridView.DataSource = result;
MyGridView.DataBind();

설명

Entity Framework는 Stored에 대한 완전한 지원이 부족합니다. 프로시저 반환 값. 저장 프로시저를 함수로 가져오면 데이터 검색을 처리할 수 있는 Entity Framework 메서드로 처리할 수 있습니다.

위 내용은 Entity Framework를 사용하여 저장 프로시저에서 데이터를 검색하고 GridView를 채우려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.