問題タブ [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.
oracle - Devart dotConnect For Oracle および Enterprise Library カスタム プロバイダー マッピング
Devart の dotConnect for Oracle の試用版を使用して、単純な概念実証を試みています。これは、現在 .Net フレームワーク OracleClient を使用しているためです (非推奨のため)。 Oracle Client または Instant Client です。このため、直接モードとエンタープライズ ライブラリ 5 (データ アクセス レイヤーで使用) を操作できることを考えると、dotConnect がその仕事に適したツールであることを上司に証明しようとしています。テスト アプリの app.config にカスタム プロバイダー マップを追加するなど、Devart が提供する例に従いました。これはすべて、IDE とコンパイルされたアプリケーションの両方で私の開発マシンで動作するように見えたので、簡単なセットアップと展開プロジェクトにまとめました。
働きたくないだけです。テストは単純な select ステートメントを実行し、リストビューに結果を表示します (存在する場合 - 存在しない場合はメッセージが表示されます)。私は実際には結果自体については気にしていません。単に結果を取得するという行為です。問題は、テストを実行すると、役に立たない EL エラーが発生することです。
問題のあるコード行は次のとおりです。
app.config ファイルのプロバイダー マッピングは次のとおりです。
app.config の接続文字列は次のとおりです。
このエラーは、(とりわけ) 間違った接続文字列名を使用したことが原因で発生する可能性があることはわかっていますが、最初に構成ファイルから取得したため、これが正しいことはわかっています。また、これは開発環境で使用される構成とまったく同じです。内部例外は次のとおりです。
System.Data.OracleClient
接続文字列のプロバイダーを に変更すると、接続文字列を見つけるのにまったく問題はありませんが、サポートされていないキーワードDirect
(dotConnect Direct モード スイッチから)について不平を言うため、プロバイダー マッピングが原因であると思われます。
プロバイダーのマッピングに関して、私が何を間違ったのかわかりません。以前は使用したことがありませんが、EL 構成ツールを使用して正しいことを確認しました。カスタム ライブラリは実行可能ファイル (および他の EL ライブラリ) に含まれています。いくつかの例を見てきましたが、どれも正しい構成を持っていることを示唆しています。これは私を夢中にさせています。
c# - 通常、C#の多くの場所でコード行を統合します
OKここに私のコード
私が使用しているdevartコネクタの新しいバージョンに問題があるため、OldCompatibility.BinaryAsString = true;
以下に示すように、コードのどこにでもコード行を追加する必要があります。
しかし、問題は、このコードで多くのページがあるアプリケーション全体でこの変更を行う必要があることです。したがって、アプリケーション全体でこの変更を行う必要がないように、これをグローバルに行う方法はありますか。devartコネクタ6を使用しています
sql-server-2008 - タイムアウトを発生させる方法
タイムアウトの問題を調査しており、初期テストの一部として再現したいと考えています。
Devart、Borland C ++ Builder 6、SQL Serverは初めてですが、必要な構文がわかりません。タイムアウトする無期限の遅延を生成するために、クエリまたは一連のクエリを実行するコードの例を探しています。
mysql - コードだけを使用してmySqlデータベースに接続できません
ここで検索しましたが、答えが見つかりませんでした。
Delphi2010を使用しています。DevartMydacを使用してmySqlデータベースに接続しています。サーバー、データベース、名前、パスをコンポーネントに設定すると、問題なく接続されます。
しかし、コードだけで接続しようとすると、エラーが発生します。
メッセージ付きの例外クラスEMySalExcption"#28000ユーザー'username@00.00.00.00'のアクセスが拒否されました(passworkdを使用:YES)'。
コードメソッドがエラーを引き起こすのはなぜですか?
あなたの助けと忍耐に感謝します。
c# - Toad ではステートメントが実行されるのに、コードでは実行されないのはなぜですか?
これが私のコードです:
Toad では、この SQL は正常に機能します。Toad SQL エディターで「:PLATYPUS」を値「Phineas」に置き換えるだけで、「27 レコードが影響を受けました」というメッセージとそれに続く SQL Select として、実際にレコードが更新されます。更新されたレコードが表示されます。
しかし、私の C# アプリでは、ExecuteNonQuery() の呼び出しでハングします...更新が失敗したことも、成功したことも、メッセージはまったく表示されません。単にそこにハングアップし、スマーフ ボールのように空間に浮かんでいます。月に。
アップデート
動作する dotConnect for Oracle の古い更新コードをいくつかコピーしましたが、それでも同じことを行います (ExecuteNonQuery() の呼び出しでハングします)。
別の更新
たとえそれが有効な SQL であっても、SQL ステートメントがそれを解析するものに対して混乱しすぎる可能性はありますか?
繰り返しますが、このクエリは Toad で正常に実行されますが、非常に複雑です。次のように、ネストされた 2 つの Select ステートメントが含まれています。
さらに別の更新
サブセレクトをパラメーター (これらの atmoic SQL select ステートメントから返された結果を介して提供される) に置き換えてクエリを単純化すると、クエリは実行されます (ほぼ瞬時に実行されます)。
したがって、ネストされたサブセレクトは、Updateステートメントを解析するものには多すぎると思います...
.net - Represent View Without Key in Entity Framework
I'm using a model produced with Devart Entity Developer (.edml file, which I understand is mostly similar to .edmx) to generate Entity classes whose relations are initialized in a DbContext class. The database schema specifies no PK for View1, and all columns are nullable. But the code generation assumes that for views lacking a primary key, all columns are the key. I.e., the .ssdl has all columns under the Key element and the DbContext has .IsRequired() specified on all, like so:
ssdl excerpt:
From DbContext:
This causes a NullReferenceException when querying would return a row with one of the PK columns having null value.
Is there a way to represent a view in EF without specifying keys or altering the database schema? I've found this: http://elegantcode.com/2012/03/15/querying-entityframework-views-without-a-key/
Is this the preferred solution? I suppose I could use DefiningQuery as well, but this seems to duplicate the sql that was used to generate the view?
asp.net-mvc-3 - MSDeployを使用したDevArtEntityFrameworkの展開
最初のシナリオ:-
Entity Frameworkを使用していくつかのクエリを実行し、モデルを構築しています。MVC3プロジェクト内でDevArtEntityDeveloperを試しています。アプリのアップロードをSVNにビルドすると、継続的インテグレーションサーバーがそれを取得し(Bamboo)、MSDeployを使用してビルドおよびデプロイします。
ただし、MSDeployはファイルを展開する前に事前にファイルについて知る必要があるため、何らかの理由で展開に問題があるように見えます。これは、'.csdl', '.ssdl', or '.msl'
ファイルがリモートマシンに展開されていないことを意味します。
ここで、DevArtをEmbedInOutputAssemblyからCopyToOutputDirectoryに設定すると、web.configファイルがフォームを変更します
<add name="jcps01EntitiesConnectionString" connectionString="metadata=res://*/Models.jcps01.csdl|res://*/Models.jcps01.ssdl|res://*/Models.jcps01.msl;provider=System.Data.SqlClient;provider connection string="Data Source=XXXXX;Initial Catalog=jcps01;Integrated Security=False;Persist Security Info=True;User ID=XXXXX;Password=XXXXX""
に
<add name="jcps01EntitiesConnectionString" connectionString="metadata=~/bin/Models/jcps01.csdl|~/bin/Models/jcps01.ssdl|~/bin/Models/jcps01.msl;provider=System.Data.SqlClient;provider connection string="Data Source=XXXXX;Initial Catalog=jcps01;Integrated Security=False;Persist Security Info=True;User ID=XXXXX;Password=XXXXX""
providerName="System.Data.EntityClient" />
ただし、これには独自の問題が伴います。1つは、アプリケーションがモデルフォルダーを作成せず、ファイルを作成するだけで/bin/Models.jcps01.msl
あり、もちろん、ファイルがプロジェクト/ソリューションに含まれていないため、MSDeployはそれをデプロイしません。 :|
これまでにDevArtでMSDeployを使用して成功した人はいますか?もしそうなら、出力ディレクトリなどにコピーするためにファイルに変更を加える必要がありましたか?
c# - wf4 WorkflowApplicationの永続性:SQLServerとORACLEDevArt
数十のWF4インスタンスを処理する24時間365日のアプリケーションがあります。
SQLインスタンスストアの永続化OnIdleを使用して、永続化と回復の戦略を正常に実装し、制御されたシャットダウンでそのステータスを待機し、回復にロードバックしました。
ORACLEに移行する必要があり、DevArtインスタンスストアを使用しましたが、同じコードでいくつかの問題が発生しました。
これまでのところ、OnIdleを維持していますが、リカバリでロードできるようにするために、制御されたシャットダウンでアンロードする必要がありました。
私たちの恐れは、現れるかもしれない「それほど穏やかではない」シャットダウンについて考えるときに起こります。
制御されたシャットダウン方法に到達できない場合、アンロードされずに永続化されたインスタンスはどうですか?それらを回復する方法は?誰もが同じ状況に直面しましたか?
c# - MSTest エージェントでの実行時に Oracle oci.dll が見つからない
データベース関連の統合テストを MSTest テスト エージェントで実行しようとしています。私たちは、devart dotconnect で c# と oracle db を使用しています。
間接モードを使用する必要があるため、devart と oracle クライアントをテスト エージェントにインストールしました。
ローカル マシンでテストを実行すると、テストはスムーズに実行されます。しかし、テスト エージェントで (リモートで) 実行すると、クライアントの oci.dll が見つかりません。これはどこかに依存しています。
System.IO.FileNotFoundException: Oracle クライアント ライブラリ oci.dll をホームから読み込めません ..
今、私はなぜそれが起こるのか分かりません。すでに PATH 環境変数を確認しましたが、問題ないようです。これが私のマシンでは機能するのに、テスト エージェントにデプロイした場合は機能しない理由はありますか?
編集:devart内にスタックトレースを追加:
c# - 複数の多対多の関係を持つ方法
私の問題は単純ですが、EF にデータベース スキーマ (Oracle) を理解させることができないようです。
問題
複数のMM 関係をモデル化したい場合は、以下の図を参照してください。
ご覧のとおり、私は本と雑誌を持っています。リンク テーブル (ジャンクション テーブル、インターセクション テーブル、わかります!) を使用して、これらの両方に対する URI を保存したいと考えています。この場合、Journal 16 と Book 75 に対して保存したいのは「www.google.com」です。これらは、青でマークされた次の形式でリンク テーブルに保存されます。完全を期すために、ID 5 のリンクに緑色の例を追加しました。データがどのように組み合わされるかを見ることができます。
とにかく、EF モデルを更新しようとすると、(Visual Studio で) 次のようなエラーが表示されます。
行 210 から始まるフラグメントのマッピングの問題: テーブル REF_URI (REF_ID) からテーブル JOURNAL (REF_ID) への外部キー制約 'REF_URI_JOURNAL_FK1': テーブル REF_URI の列は AssociationSet BOOK_URISet の End BOOK にマップされますが、テーブル JOURNAL のキー列はマップされませんこの End に対応する EntitySet BOOK のキーに。
ええ、実際にはそのエラー メッセージが表示されません。
EF を 1 MM の関係で動作させることができます。
それはすべて「ハンキードーリー」で機能しますが、2番目のMM関係を追加すると、上記のエラーメッセージで失敗しました.
どうすればこれを回避できるか知っている人はいますか?