0

@CreativeManix の提案に従って、petaPeco の調査を開始しました

asp.net mvc アプリケーションで多数の行 (10 ミルを超える) を取得する

正確なsystem.data.oracleclientを追加し、mvcが.dllでコンパイルされているビンにweb.configを配置した後、次のエラーが発生しました。

Error   3   

Running transformation: System.IndexOutOfRangeException: Index was outside the bounds of the array.
   at System.Array.InternalGetReference(Void* elemRef, Int32 rank, Int32* pIndices)
   at System.Array.GetValue(Int32 index)
   at Microsoft.VisualStudio.TextTemplating5F4490FB7AE018243DBB4DF6250E7211.GeneratedTextTransformation.GetCurrentProject()
   at Microsoft.VisualStudio.TextTemplating5F4490FB7AE018243DBB4DF6250E7211.GeneratedTextTransformation.GetConnectionString(String& connectionStringName, String& providerName)
   at Microsoft.VisualStudio.TextTemplating5F4490FB7AE018243DBB4DF6250E7211.GeneratedTextTransformation.InitConnectionString()
   at Microsoft.VisualStudio.TextTemplating5F4490FB7AE018243DBB4DF6250E7211.GeneratedTextTransformation.LoadTables()
   at Microsoft.VisualStudio.TextTemplating5F4490FB7AE018243DBB4DF6250E7211.GeneratedTextTransformation.TransformText()
   at Microsoft.VisualStudio.TextTemplating.TransformationRunner.RunTransformation(TemplateProcessingSession session, String source, ITextTemplatingEngineHost host, String& result)

このエラーは、petaPoco のインストール後に変換を実行すると表示されます。

エラーが「GetCurrentProject」から来ていることを私が知っていることの1つは、おそらく「(Array)dte.ActiveSolutionProjects」です。

自分のプロジェクトでのペタポコの設定方法が間違っていると思います!どういうわけか、activesolution プロジェクトが見つかりません。修正方法がよくわかりません。

4

1 に答える 1

0

これを調べました。

私の質問セクションでは、いくつかの質問をしました。

  1. Database.CS を生成する変換またはプロセスを起動する方法がわかりませんでした。最初はコマンド プロンプトから petapoco をインストールしていました。

これを行うには、「Database.tt」を右クリックして「Run Custom Tool」をクリックします。接続文字列が正しい場合 + 正しい Oracle/SQL サーバー データ プロバイダーを参照している + そのプロバイダーが GAC で利用可能 + (それが oracle で、アクセスしようとしているデータベースのデフォルト スキーマ ユーザーのパスワードを持っている場合)-次に、Database.cs を生成する必要があります

  1. Oracle データ クライアントが Oracle データベースからスキーマを読み取れるようにするには、次のエントリを取り出す必要がありました。

cmd.GetType().GetProperty("BindByName").SetValue(cmd, true, null);

そして、すべてがうまくいきました。

  1. 接続文字列は次のようになります。

connectionString="Data Source=PXWREG;Persist Security Info=True;User ID=XWREG_ACDS_T;password=isacdst"

于 2013-08-19T17:33:35.677 に答える