問題タブ [objectdatasource]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - ObjectDataSource のマッチング アルゴリズムが柔軟でないのはなぜですか?
UpdateNamesストアド プロシージャは@Firstという名前のパラメーターを 1 つしか取りませんが、Lastという名前の追加のパラメーターを定義することができ、更新は引き続き成功します。
ただし、ObjectDataSource コントロールを扱う場合、ObjectDataSource で定義されたパラメーターの数は、UpdateNames()メソッドで定義されたパラメーターの数と正確に一致する必要があります。したがって、UpdateNames()がFirstという名前のパラメーターを 1 つだけ受け取る場合、次の例では例外が発生します。
A) ObjectDataSource のマッチング アルゴリズムが SqlDataSource のマッチング アルゴリズムほど柔軟でなく、余分なパラメーターを無視するのはなぜですか?
ありがとうございました
c# - SqlParameter.IsNullable は次の場合にのみ意味があると思います…?
1)SqlParameter.IsNullable
が に設定されている場合true
、受信null
値は に変換さDBNull.Value
れてデータベースに送信されます。したがって、GridViewも?に設定されている場合IsNullable
にのみ、true
Parameter.ConvertEmptyStringToNull
true
2) GridView のパラメーターと ObjectDataSource のパラメーターの両方にConvertEmptyStringToNull
プロパティがあります。しかし、(データソースを更新しようとしたとき):
• GridView をParameter.ConvertEmptyStringToNull
に設定しtrue
、次に ObjectDataSourceParameter.ConvertEmptyStringToNull
をfalse
?!に設定する必要がある場所。
• または、GridView を に設定する必要がありますParameter.ConvertEmptyStringToNull
がtrue
、SqlDataSourceSqlParameter.IsNullable
はfalse
?
asp.net - ObjectDataSource Insert メソッド
DetailsView コントロールにバインドしている ObjectDataSource があります。ビジネス レイヤー (データ レイヤーに呼び出します) に挿入メソッドを記述しましたが、挿入メソッドが起動する前に何か他のことをしたいまで、すべて正常に動作します。ビジネス レイヤーに移動する前に、ファイル アップロード コントロールにアクセスする必要があります。そこで、DetailsView に ItemCommand イベントを接続しました。イベントがピックアップされ、必要なことを FileUpload コントロールでうまく実行できます。その場合、ビジネス層で挿入メソッドを呼び出します。これは、ObjectDataSource コントロールで指定されたメソッドと同じです。しかし、Insert メソッドは 2 回起動します。これについて少し考えた後、これが予想される動作であることがわかりました.ItemCommandイベントから呼び出されたときに1回、ObjectDataSource InsertMethodから2回目が呼び出されます。
ObjectDataSource から InsertMethod 属性を単純に削除して、そのメソッドの二重発火をなくすことができると考えましたが、そうすると次のエラーが発生します。
InsertMethod が指定されていない限り、挿入は ObjectDataSource 'objStudentDetails' によってサポートされていません。
ObjectDataSource にメソッドを起動しないように指示する方法はありますか? 以下のコード簡略化されたコードを参照してください。
asp.net - Telerik Reporting はビジネス オブジェクト データソースをサポートしていますか?
ビジネス オブジェクトを使用して、3 層モデルで厳密に型指定されたテーブル アダプターを呼び出す必要があります。また、Telerik レポートを使用する必要がありますが、オンラインの例は見当たりませんでした。ノースウィンドへの単純な選択を作成し、レポートをそれに直接接続する簡単な例を見ただけです。私は Telerik レポートの 2008 年第 3 四半期を使用していますが、私のデザイナーは私が見たビデオと同じようには見えません。boReportHeader と boReportLines の 2 つのビジネス オブジェクトがあり、それぞれに Ui からパラメーターが渡され、レポート ヘッダーと詳細セクションに入力する必要がある 4 つのメソッドがあります。デザイナーとコード ビハインドの両方から Telerik レポートからこれらを使用しようとしてしばらく時間を費やしましたが、うまくいきませんでした。これは RadGrid と同じくらい簡単だと思っていましたが、そうではないようです。Telerik Reporting のデータソースとして、パラメータを持つ複数のビジネス オブジェクト データ ソースを使用した経験がある人はいますか? このプロジェクトの主な要件は、BLOB ファイルとしてデータベースに保存される PDF ファイルを生成することです。Telerik Reporting でこれが不可能な場合、Telerik Reporting 以外に提案できる別のツールはありますか?
asp.net - TemplateFieldsでObjectDataSourceを使用してGridViewで並べ替える方法
バックグラウンド:
私はGridViewとObjectDataSourceを使用しています。ページングと並べ替えを実装しています。
ObjectDataSourceの場合:
GridViewの場合:
ページングと並べ替えを機能させるために、「EnableSortingAndPagingCallbacks」をTrueに設定しました。以前、「System.Web.HttpException:処理されなかったGridView起動イベントSorting」が発生していました。そしてこれはそれを修正します。
GridViewでBoundFieldsのみを使用する場合、これは素晴らしく、正常に機能します。
ただし、TemplateFieldsを使用した場合、「NotSupportedException:一部のコントロールがコールバックで正しく更新できないため、コールバックはTemplateFieldでサポートされていません。GridViewでコールバックをオフにしてください。」が表示されます。
これは理にかなっています。EnableSortingAndPagingCallbacksを使用せずに、並べ替えを機能させる方法を知る必要があります。
EnableSortingAndPagingCallbacks = Trueの場合:
- ページングワークス
- 仕分け作業
- BoundFieldsは機能します
- TemplateFieldsが機能しない
EnableSortingAndPagingCallbacks = Falseの場合:
- ページングワークス
- 並べ替えが機能しない
- BoundFieldsは機能します
- TemplateFieldsは機能します
私の質問:
Paging、Sorting、およびTemplateFieldsをすべて同時に機能させるにはどうすればよいですか?
実装の明確化:
GridViewでObjectDataSourceを使用するには、ソート式、返される行数、および開始行を提供するSelectというメソッドを実装する必要があります。
特定のSortExpressionは、aspx/ascxで定義されています。
これは、列がクリックされたときに渡され、ObjectDataSourceのSelectメソッドを呼び出すことになっていますが、EnableSortingAndPagingCallbacks = trueの場合は機能しないようで、代わりに、Sortingイベントが定義されていないという例外が発生します。
asp.net - GridView と ObjectDataSource を使用して並べ替える方法は?
を含む GridView があり、ObjectDataSource
それを並べ替えられるようにしたいと考えています。
ページングは正しく機能しますが、並べ替えでは例外が発生します。
GridView
gridView
は、処理されなかった並べ替えイベントを発生させました。
サーバー側で並べ替えを有効にするにはどうすればよいですか?
(つまり、gridView.EnableSortingAndPagingCallbacks
false のままにする必要があります)
asp.net - ASP.NET DataSource&GridViewデータバインディング、プログラムでパラメーター値を設定
したがって、ObjectDataSourceを含むGridViewがあり、ObjectDataSourceのSelectParametersの1つをプログラムで設定したいと思います。
試しました(Page_LoadとDropdownList__SelectedIndexChangedの両方で)
しかし、それは機能しませんでした。あなたは何を提案しますか?
sql - SQL文字列パラメータでエスケープする必要がある文字
例外を防ぐために、SQL 文字列パラメーターでエスケープする必要がある文字の完全なリストが必要です。ObjectDataSource フィルター パラメーターに渡す前に、問題のあるすべての文字をエスケープされたバージョンに置き換える必要があると思います。
objectdatasource - FilterExpression が機能しない? なんで?
ObjectDataSource1.FilterExpression = "userid LIKE '{0}' AND アクション LIKE '{1}'"; ObjectDataSource1.FilterParameters.Add("userid", ddlUsers.SelectedValue); ObjectDataSource1.FilterParameters.Add("アクション", ddlAction.SelectedValue);
私はこのコードのように書いています。
実行すると、グリッド ビューが空になります。しかし、私が書いて実行するとうまくいきます。
パラメーター (アクション) がないと、選択した ddlUsers.SelectedValue のすべてのログインが表示されます。
なぜこのように機能しないのですか?