sqlDataSource コントロール (ウィザード テスト ボタン) でテストすると機能するクエリがありますが、ページを実行すると機能しません。グリッドビューのソースとして正しい sqlDataSource コントロールがあることを確認しました。これは私を夢中にさせています。
これは他の誰かに起こりましたか?
編集:
where句のこの行と関係があります(これはOracleデータベースです)
Where (upper(AA.Email_Address)=UPPER(:Email_Address) OR :Email_Address IS NULL) AND
(upper(AA.Display_Name) Like UPPER('%' || :Display_Name || '%') OR :Display_Name IS NULL)
ページは各検索句で個別に機能しますが、両方が存在する場合は機能しません (両方のパラメーターを使用した sqlDataSource ウィザード テストでは機能しますが、ページの実行時には機能しません)。
================================================== ===================================
編集:
よりきれいに見えるクエリのアドバイスをありがとう。
デフォルトの CancelSelectOnNullParameter プロパティを「true」に設定しました。false に変更すると、ページは表示されません。このメッセージが表示されます
「サーバー アプリケーションを利用できません この Web サーバーでアクセスしようとしている Web アプリケーションは現在利用できません。Web ブラウザーの [更新] ボタンをクリックして、要求を再試行してください。管理者注: この特定の要求の失敗の原因を詳述するエラー メッセージWeb サーバーのアプリケーション イベント ログで見つけることができます。このログ エントリを確認して、このエラーが発生した原因を特定してください。」
================================
ページを実行する場合を除いて機能するクエリは次のとおりです
SELECT *
FROM a Left Join b on b.institution_code=a.institution_code
WHERE
(upper(a.Login_Name)=UPPER('%' || :Login_Name || '%') OR :Login_Name IS NULL)
AND (upper(a.Display_Name) Like UPPER('%' || :Display_Name || '%') OR :Display_Name IS NULL)
AND (upper(a.Email_Address)=UPPER(:Email_Address) OR :Email_Address IS NULL)
AND ((a.institution_code=:institution_code) OR :institution_code IS NULL)
AND (upper(b.institution_desc) Like UPPER('%' || :institution_desc || '%') OR :institution_desc IS NULL