엔티티 프레임 워크의 "오픈 데이터 드레더"오류 : 일반적인 함정
아래에 표시된 메소드는 다른 데이터베이스 쿼리를 추가합니다 :
문제? 기본 쿼리는 a를 엽니 다. 는 첫 번째 를 닫지 않고 다른
를 엽니 다. 오류가 발생한다. 솔루션 : 다중 활성 결과 세트 (mars)
<code class="language-csharp">var accounts = from account in context.Accounts from guranteer in account.Gurantors select new AccountsReport { CreditRegistryId = account.CreditRegistryId, AccountNumber = account.AccountNo, DateOpened = account.DateOpened, }; return accounts.AsEnumerable() .Select((account, index) => new AccountsReport() { RecordNumber = FormattedRowNumber(account, index + 1), CreditRegistryId = account.CreditRegistryId, DateLastUpdated = DateLastUpdated(account.CreditRegistryId, account.AccountNumber), AccountNumber = FormattedAccountNumber(account.AccountType, account.AccountNumber) }) .OrderBy(c=>c.FormattedRecordNumber) .ThenByDescending(c => c.StateChangeDate);</code>폐쇄가 필요하지 않아 코드를 단순화합니다.
위 내용은 엔티티 프레임 워크가 왜 '이 명령과 관련된 개방형 데이터 레더가 이미 있으며, 먼저 닫아야하는이 명령과 관련이 있습니까?'의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!