問題タブ [devart]
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# - StoreGeneratedPatternがDevArtEntityFrameworkで機能していませんか?
DevArt dotConnect for Oracle v。6.8.0.350を使用して、直接モードでOracleExpressのデフォルトのHRモデルにアクセスする簡単なテストプログラムを作成しました。
ご覧のとおり、私はLOCATIONテーブルに挿入しています。ここでトリガーを追加しました:
最後のステップはStoreGeneratedPattern、モデルをに設定することでしたIdentity(はい、XMLに書き込まれているかどうかを確認しました)。
test-appを実行すると、レコードが作成され、有効な新しいが取得されますLocationID。ただし、EFでは新しいIDは到着しません。
生成されたIDを認識しないのはなぜですか?はいの場合、それはどういう意味ですか:DevArtブログ
編集:私は今、さまざまなシナリオでそれをテストしました:
- ダイレクトモードのdevArtEntityModel
- OracleClientを使用したdevArtEntityModel
- OracleClientを使用したADO.NETEntityModel
結果は同じです。DSIDSaveChangedではNoが返されます。別の結果として、私が書くと
InvalidOperationExceptionは、正しいが役に立たないキー「0」のエンティティが存在することを通知します:-(。
vb.net - Devart DotConnect for SQLite 4.2.77 のアップグレードが VB の既存のプロジェクトで困難になる
以前のバージョンから DotConnect for SQLite 4.2.77 にアップグレードしました (申し訳ありませんが、バージョンを思い出せません)。VB Express 2010 では、ヘルプに記載されているコンポーネントの手動インストールに成功しました。ただし、以前に作成したプロジェクトを開くと、DotConnect コードが使用されている場所に多数のエラーがリストされ、「デザイナーをロードする前にデータ損失の可能性を防ぐには、次のエラーを解決する必要があります: "。デスクトップ アプリケーション用の Visual Studio 2012 もインストールされていますが、同様の結果が得られます。どうすれば問題を解決できるかについてのアイデアはありますか?
前もって感謝します。
mysql - 概念型のメンバー数が一致しません
最初に dotConnect for MySQL でエンティティ フレームワーク コードを使用していますが、何らかの理由でモデル マッピングの 1 つに関するエラーが発生します。
このエラーを検索しましたが、通常、問題のある xml ファイルまたはエンティティ フレームワーク固有のファイルが原因です。私はこれらのいずれも使用しておらず、モデルを含む .cs コード ファイルのみを使用しています。
例外の詳細:
System.Data.MappingException: 概念型 'SiteModels.TournamentTable' のメンバー数が、オブジェクト側の型 'SiteModels.TournamentTable' のメンバー数と一致しません。メンバー数が同じであることを確認してください。
デザイナーがなく、コードを含むファイルが 1 つしかないため、このエラーが発生する理由がわかりません。
問題のあるクラスは次のとおりです。
}
コンテキスト構成:
}
助けてくれてありがとう、私には手がかりがありません。
c# - バージョンの競合について心配する必要がありますか?
最近、devArt dotConnect for Oracle コンポーネントをバージョン 6 から更新しました。7.2まで
すべてうまくいくようです。
ただし、コンパイルすると、「同じ依存アセンブリの異なるバージョン間で競合が見つかりました。 」という警告が表示されます。
これが dotConnect コンポーネントに関連しているかどうかはわかりません (それはわかりません) が、それはかなり良い推測だと思います。
警告を 2 回クリックすると、次のダイアログが表示されます。
MS Visual Studio -- 1 つ以上の依存アセンブリにバージョンの競合があります。
app.config ファイルにバインド リダイレクト レコードを追加して、これらの競合を修正しますか?
それら (MS) またはそれ (VS) を提供するのはどれほど素晴らしいことでしょう。正確にはわかりません。私はとどまるべきですか、それとも行くべきですか?
アップデート
2 つの DevArt dotConnect for Oracle コンポーネントへの参照があります。
Devart.Data -および Devart.Data.Oracle
Devart.Data: ランタイム バージョン v2.0.50727、バージョン 5.0.555.0
Devart.Data.Oracle: ランタイム バージョン v2.0.50727、バージョン 7.2.96.0
したがって、バージョンはありますが、ランタイム バージョンは一致しません。これが問題かどうかはわかりません。警告メッセージがより明確であるとよいでしょう。おそらく「それ」は問題が何であるかを正確に知っています - なぜその重要な情報を漏らさないのですか?
更新 2
まったく同じ 2 つの参照を使用する別のプロジェクトがあります。更新されたコンポーネントをインストールした後、コンパイルさえしません。2つのプロジェクトの違いはなぜですか?したがって、.DLL が同じ (同じ名前、ディスク上の同じ場所) であったとしても、それらを削除してから 2 番目のプロジェクトに追加し直したところ、問題なく実行されました。エラーも警告もありませんでした。しかし、最初のプロジェクトに戻っても同じ警告が表示されますが、これらの 2 つの参照/DLL を削除して追加し直しても、同じ警告が表示されます。だから私はまだ何をすべきかわからない/リダイレクトするという提案/提案でVSを取り上げるべきかどうか(私は心の中で、「古い学校」の電話オペレーターがワイヤーをあらゆる方法で再接続し、10代のツイスター愛好家にふさわしい旋回をしているのを想像しています。 )。
c# - 間違ったプロバイダーを使用する Devart エンティティ開発者ですか?
私たちはdevart dotconnect、エンティティ開発者、およびVisual Studio 2010の開発者ツールを使用しています.
先週、私は新しいマシンと Windows XP から Windows 7 へのアップグレードを手に入れました。
このアップグレードの前は、すべて正常に機能していました。しかし、エンティティ モデル ウィザードでテーブルを選択すると、ビジュアル スタジオの出力には次のように表示されます。
'{0}' のモデル オブジェクトを作成できません。プロバイダ Oracle.DataAccess.Client が見つかりません。
Devart 環境が間違ったプロバイダーを探しているようです。
ウィザード内で、「Database first」と Provider=Oracle Data Provider for .NET を選択します。
entity-framework - Devart dotConnect for PostgreSQL 製品で EF モデルを正しく生成できない
Devart dotConnect for PostgreSQL 製品を使用して既存の PostgreSQL データベースから Entity Framework モデルを作成するときに問題が発生しました。この製品は、データベースから EF モデルを生成する 2 つの方法を提供しますが、どちらも機能していないようです。この Devart プロバイダーで ADO.Net エンティティ データ モデルを使用すると、データベースからモデルを生成するときにウィザードでテーブル リストが空で表示されます。Devart エンティティ モデルを使用すると、テーブル リストがウィザードに正しく表示され、モデルが生成されますが、すべてのナビゲーション プロパティが欠落し、null 不可のすべてのフィールドがエンティティ キーとして生成されます。誰でもこの製品の経験があり、バグに直面しているかどうか、または正しく使用していないかどうかを確認できますか? ありがとう
エティエンヌ
.net - devArt dotConnect DbDataTable (おそらく DataTable) で現在選択されている行を取得する
dotConnect DbDataTable コンポーネントの編集プロセスの一部を簡素化するコントロールを作成しています。
編集プロセスの一部として、現在の行で BeginEdit() および EndEdit() を呼び出すことができます。多くの記事では、現在の行が DataTable で管理されていないことを明確にしていますが、それが完全に正確ではないのか、DbDataDable (dotConnect から) がこのレイヤーを追加するのか疑問に思っています。
フォーム上に DbDataTable (OracleDataTable の形式) を作成し、1) DataGridView と 2) TextBoxes や CheckBoxes などのデータ バインド コントロールのセット (両方で DataSource プロパティを使用) をアタッチできます。
これは、グリッドで現在の行が変更されると、データ バインド コントロールの値も変更されることを意味します。データ バインドされたコントロールは、DataGridView での選択を認識しませんが、それに応じて値が変更されます。
すべてのプロパティを調べ、テーブルに関するすべてを調べましたが、リモートで役立つものは何も見つかりません。私が持っていた唯一のリードは、カーソル位置を含めることができることを示唆する DefaultView プロパティでしたが、これについてはこれ以上何も公開されていません。
dotConnect のドキュメントは、使用例に関してかなり不足しているため、そこにも (Google でも) あまり見つけることができませんでした。
このデータを DbDataTable コンポーネントから抽出できるかどうか、または DataGridView を関連付けないとコンポーネントが機能しないかどうかについて、誰かが情報を持っていますか (柔軟性が大幅に低下します)。もう 1 つのオプションは BindingSource を作成することですが、そのバインディング ソースを使用するには、すべてのコントロールのバインディングを変更する必要があります。
entity-framework - DotConnectforPostgreSQLを使用してEntityFrameworkエンティティにnullフィールド値を照会する方法
Devart DotConnect forPostgreSQLコネクタを使用してEntityFrameworkエンティティのnullフィールドをクエリすると、奇妙な動作が見られます。
例:次の2つのテストを行った場合:
EF自動生成SQLクエリをチェックすると、次の結果が得られます。
test1の結果:
test2の結果:
nullフィールドをクエリしたときの結果は非常に奇妙です...テスト2の結果と同様の結果を期待していましたが、"Extent1".id_bloc IS NULLWHERE句があります...
バグですか?nullフィールドを効果的にクエリするにはどうすればよいですか?
asp.net-mvc - 有効なデータが設定されていても、saveChanges のときに必要なフィールドについて不平を言う Entity Framework
MVCでEntity Framework(最初にデータベースを使用したDbContext)を使用しています。ユーザーがフォームから保存すると、私の内部フラグに応じて、エンティティを挿入メソッドの更新に送信する条件がコントローラーに設定されます。
エンティティを更新メソッドに送信するときに、変更済みのフラグを使用してフラグを立て、context.Entry(myEntity).State = EntityState.Modified;saveChanges() を呼び出すと、すべてがうまく機能します。
エンティティを挿入メソッドに送信するときは、added using にフラグを立てますcontext.Entry(myEntity).State = EntityState.Added;が、saveChanges() を呼び出すと、必要な 2 つのフィールドに関するエラーが表示されます...
問題は、これらの2つのフィールドが空ではなく、保存する直前に有効なデータが効果的に含まれていることです...保存する直前に、これらの2つのフィールドに新しい値を強制しようとしましたが、同じエラーです。
Devart DotConnect For PostgreSQL を db プロバイダーとして使用していることを言及しておくと便利です。
この問題をデバッグする方法はありますか?
編集:
エラーは次のとおりです。
1 つ以上のエンティティの検証に失敗しました。詳細については、「EntityValidationErrors」プロパティを参照してください。
この EntityValidationErrors を探すと、次の 2 つの特定のエラーが表示されます。
flg_actif フィールドは必須です
user_creation フィールドは必須です
前述したように、これらのフィールドは保存する直前にデータが入力されているため、何が起こっているのかわかりません。
私はEF v4.0.30319を使用しています(system.data.entity => v4.0およびEntityFramework => v4.4)
EDIT2: もう少し明確にするために: 挿入しようとしているエンティティは、データベースに既に存在します。フォームには、このデータベース行のデータが表示されます。保存するとき、行を更新するかどうかを決定します (これはうまくいきます) が、データベースの変更履歴を保持するために、編集した行を更新するのではなく、新しいレジスタとして挿入する必要がある場合があります。
c# - DevArt dotConnect for Oracle が EF 4.0 の文字列で奇妙な動作をする
プロジェクトを DevArt のバージョン 7.2.114 に更新した後、TOAD で直接実行すると、生成された SQL が結果を返すにもかかわらず、一部のクエリが結果を返さないことに気付きました。バージョン 7.0.25 に戻すと、すべて正常に動作します。
私のデータベースの顧客テーブルは次のようになります。
私のクエリは次のようになります。
ここで、EF クエリを実行すると、まったく例外なく 0 レコードになります。しかし、SQL コマンドを実行すると、2 つのレコードが作成されます。
2行目のコードを次のように変更すると:
正しい結果が返されます。
このコードを指しているいくつかのヒントを見つけました:
しかし、それは効果がありません。