問題タブ [telerik-open-access]
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.
asp.net - telerik オープン アクセス ORM から継承されたクラスをクエリ中にエラーが発生しました
ASP.net C# Web アプリケーションでTelerik Open Access ORMの最新バージョンを使用しています。私のEntitiesModel1.rlinqでは、データベースから「 Customer 」という名前のテーブルをマップしました。次に、「 SubCustomer 」という名前のドメイン クラスを作成し、 「 SubName : String 」という名前の新しいプロパティ フィールドを追加しました。次に、ドメイン クラスからデフォルト プロパティ フィールドを削除しました。次に、 Customer-SubCustomerクラスに継承を適用しました。そのため、継承の矢印は SubCustomerからCustomerエンティティを指しています。
次に、垂直継承をSubCustomerクラスに適用し、「 Default * mapping *」を使用してCustomerクラスの「 SubName」フィールドを「CustomerName」フィールドにマップしました。データベース モデルからの更新とすべてのプロセスの検証は、エラーや警告なしで正常に完了しました。
このコンテキストを Web アプリケーションにデプロイし、次のようにクエリを実行している間:
エラーが発生します:
*クエリ実行エラー: Telerik.OpenAccess.RT.sql.SQLException: 無効なオブジェクト名 'SubCustomer. Telerik.OpenAccess.RT.Adonet2Generic.Impl.PreparedStatementImp.executeQuery() で OpenAccessRuntime.Relational.conn.PooledPreparedStatement.executeQuery() で OpenAccessRuntime.Relational.fetch.FetchResultImp.Execute() SQL: SELECT a.[CustomerID] AS COL1 、b.[voa_class] AS COL2、a.[サブネーム] AS COL3、b.*
「 Customer 」エンティティもクエリしようとしましたが、同じエラーが発生しました。助けてください。
よろしく、プラヴィーン。
c# - クエリの実行中にエラーが発生しました:Telerik.OpenAccess.RT.sql.SQLException:無効なオブジェクト名'従業員'
asp.net C#WebアプリケーションでTelerik OpenAccessORMを使用しています。私のアプリでは、「Person」という名前のデータベースからテーブルエンティティを基本クラスとしてマッピングし、 「Employee」 という名前のサブドメインクラスを作成しました。次に、サブクラスの垂直継承をBaseクラスに適用し、Employeeサブクラスに「デフォルトマッピング」を使用しました。
Base / Subクラスの両方をクエリしているときに、エラーが発生します:
クエリの実行中にエラーが発生しました:Telerik.OpenAccess.RT.sql.SQLException:無効なオブジェクト名'Employee'。
これらは、コンテキストからクエリに追加される行です。
助けてください。
.net - ORM で IList によってクエリが実行されるのはどの時点ですか?
私は telerik の OpenAccess ORM を使用しており、生成されたコードにいくつかの変更を加えています。ナビゲーション プロパティ (別のテーブルへのキー) を持つエンティティの場合、これらは次のような IList として生成されます。
SystemUsers
まず、データベースに対して実際にクエリが行われるのはどの時点でしょうか? これは IList であるため、オブジェクトの作成時にデータベースに対して実行されると考えていましたが、そうではないことはわかっています。
私がやりたいことは、生成されたすべてのナビゲーション プロパティで削除されたアイテムを除外することであり、次のコードでこれを行うために t4 テンプレートに変更を加えています。
基本的に、これはコレクションから削除対象としてマークされたコレクションを差し引いたものを返すだけです。私の懸念は、.ToList()
それがいつ実行されるかです。ToList()
にアクセスするたびにデータベースに対してクエリを実行することでクエリの速度を低下させたくはありませんがSystemUsers
、アイテムをフィルター処理する必要もあります。ToList()
それがデータベースヒットを引き起こすかどうかさえわかりません。コードが実際にデータベースにヒットする時期がわからないので、SystemUsers
さらにフィルター (where 句、where 句、等)。
vb.net - カスタム遅延読み込みオープン アクセス ORM
私はオープン アクセスを使用しており、親エンティティの情報だけを取得して、関連する子の情報をカスタム ロードする簡単な方法が必要です。つまり、注文を求めるときは、注文情報と、注文情報をロードできるかどうかだけが必要です。
私が持っている場合:
たとえば、次のことが必要な場合はどうすればよいですか。
そして、OrderLines ではなく、Order Data を取得するためだけにクエリが必要です。これは、OA がデフォルトで行うようです。
編集:私はすでにこれを試しました:
私はまだ OrderLines データを受け取っていますが、そのデータは常に必要というわけではありません。telerik の例のほとんどは、関連するデータをロードしようとしていますが、その逆が必要です。やりたいかやりたくないかを指定する方法はありますか?明確にしたいと思います:/
model-view-controller - Telerik Openaccess ORM 拡張ドメイン モデル
私はTelerik OpenAccess ORMを初めて使用し、データベースファーストアプローチでMVCプロジェクトに使用しています。モデルに関する彼らのサイトでこのチュートリアルビデオを見ました: http://tv.telerik.com/watch/orm/building-a-mvc-3-application-database-first-with-openaccess-creating-model?seriesID= 1529年
Modal からドメイン クラスとクエリ データベースを拡張する方法を知りたいです。たとえば、生成された「Person」クラスがあり、次のクラスでそれを拡張しています:
これは、上のビデオに示されている例と非常によく似ています。特定の条件を満たす Person テーブルまたは Person オブジェクトのコレクションからすべてのレコードを取得できるかどうか知りたいです。「返品」クエリはどのようになりますか? この拡張モデル クラスで利用できる dbContext がありません :(
asp.net - リンク式でレコードを分離できません
と の 2 つのテーブルがTblAppointmentTypes
ありTblEmployeeInfo
ます。これら 2 つのテーブルの間には多対多の関係があり、結合テーブルは ですTblEmployeeServices
。には 2 つのレコードがあり、 にはTblAppointmentTypes
4 つのレコードがありTblEmployeeInfo
ます。の 2 つのレコードすべてTblAppointmentTypes
が のすべてのレコードに割り当てられ、TblEmployeeInfo
には 8 つのレコードがありTblEmployeeServices
ます。4 つすべてに割り当てられているすべてのサービスを取得したいのですがEmployees
、4 人の従業員すべてに割り当てられている 2 を返す必要がありますが、クエリは 8 つのレコードと 4 つの重複サービスを返します。
Telerik Open Access ORM を使用しています。コードは次のとおりです。
c# - NullReferenceException が発生する Linq の複雑な検索
統合検索機能で使用される次の LINQ コードがあります。
目標は、objectA の Name フィールド、または関連する objectB の Name または ID フィールドで検索語を探すことです。問題は、searchObjects を列挙しようとすると、NullReferenceException が返されるだけで、それ以上の詳細がないことです。
クエリの最初の部分は、組み合わせオブジェクトの適切なリストを (フィルターなしで) 返すので、問題は左結合にあるとは思いませんか?
何が例外を引き起こしているのかわかりませんので、助けていただければ幸いです。
私も Telerik の OpenAccess ORM を使用していますが、それが問題を引き起こしているとは思いませんか?
編集:
これは、Telerik OpenAccess ORM の問題であることが判明しました。特定の条件下では、適切な SQL の生成をあきらめ、すべてをメモリに描画し、それを L2Objects として扱います (@Dead.Rabit で指摘されているように、null では失敗するはずです)。 . 少なくとも問題の一部と思われる条件は、.DefaultIfEmpty() の前にある .Where(o => o.Type == "BasicGroup") でした。OpenAccess の最新バージョン (2013 Q1 SPI だったと思います) に更新すると、その条件を equals ステートメントの一部として書き直すことができます。
これは SP1 より前では不可能でした。この新しいクエリを使用すると、検索語の Where 句をクエリに組み込むことができ、SQL をメモリに描画するのではなく生成することができます。