問題タブ [precompiled-views]
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.
ef-code-first - EF のプリコンパイル済みビューは、Oracle と Devart で動作しますか?
「プリコンパイル済みビュー」を使用して Entity Framework のパフォーマンスを向上させることに関する興味深い記事を見つけました。
これを試してみました - EF Power Tools 拡張機能を使用して、プリコンパイル済みビューを自動生成します。私たちのアプリケーションはその後も実行されていましたが、これらのビューがまったく使用されているかどうかは疑問です.
上記の記事では、SQL Express をインストールする必要があると述べています。Oracle データベースで DevArt dotConnect を使用します。Microsoft が開発した EF Power Tools は、プリコンパイルされたビューの正しい SQL がどのように見えるかをどのように認識すべきなのだろうか。web.config を見て、dotConnect がプロバイダーであることがわかり、そのプロバイダーから SQL ステートメントを取得しますか?
この不条理を導くために、プリコンパイル済みビュー ファイル (DataContext.Views.cs) 内のすべての文字列を台無しにして、アプリケーションを実行しましたが、それでも完全に機能しました。
entity-framework - コンテキストがドメイン クラスとは別のプロジェクトにある場合、エンティティ フレームワーク コードのコンパイル済みビューを最初に配置する必要があるアセンブリ
切実に助けが必要です。
最初にエンティティ フレームワーク コードを使用しており、ドメイン クラスからコンテキストを分割することに関するジュリー ラーマンの提案に従おうとしていますが、エンティティ フレームワークにコンパイルされたビューを認識させることができません。私は多くのことを試しましたが、これまでのところ、コンパイルされたビューのコンストラクターを呼び出すことができますが、最初のクエリには約 15 分かかります (約 329 のエンティティと 600 以上のビューが作成されます)。これにより、最初のクエリでビューを作成する必要があると思います。
手順
既存のデータベースと「モデル プロジェクト」を使用して、Entity Power Tools Beta 3 を実行し、データベースを「コード ファーストでリバース エンジニア」しました。これにより、コンテキスト、ドメイン クラス、およびマッピング (流れるような) クラスが作成されました。参考までに、これを行うのは、コーディング標準に合わせて T4 テンプレートをわずかに変更したためです。
Julie Lerman の Plural Site トレーニング ビデオからの推奨事項を使用して、ドメイン クラス、コンテキスト、およびマッピング クラスを 3 つの個別のプロジェクト (コンテキスト、ドメイン クラス、マッピング) に分けました。モデル プロジェクトからこれら 3 つのプロジェクトにそれぞれファイルをコピーし、名前空間をプロジェクト名と場所に対応するように変更しました。4 つのプロジェクトの結果と名前空間: "MyCompany.DataContext"、"MyCompany.DomainClasses"、"MyCompany.DomainMappings"、"MyCompany.Model"。
「モデル プロジェクト」と Entity Power Tools から生成されたコードを使用して、作成したコンテキスト ファイルを選択し、マウスの右ボタンを押してコンテキスト メニューを表示し、「ビューの生成」を選択しました。これを行うと、「シーケンスに一致する要素が含まれていません」というエラーが表示されます。(問題#1)
OK、うまくいかなかったので、ビューを生成するために「Pawel Kadluczka」による T4 テンプレートを「MyCompany.DataContext」プロジェクトに追加し、そのカスタム ツールを実行して成功しました。ビューはエラーなしで作成されました。ただし、テスト アプリケーションを実行して基本的なクエリを実行すると、最初のクエリに 15 分かかり、生成されたビューのコンストラクター "ViewsForBaseEntitySets1B04A...0F8A()" が呼び出されません。
OK、それもうまくいかなかったので、T4 テンプレートによって作成された「ビュー」ファイルを「MyCompany.DomainClasses」プロジェクトに追加して、クラスでコンパイルされ、テスト アプリケーションを再度実行できるようにしました。今回は、最初のクエリに 15 分かかりましたが、コンストラクターを開始してから約 20 秒以内に "ViewsForBaseEntitySets1B04A...0F8A()" が呼び出されました。これは進歩ですが、バナナではありません。これにより、ビューはコンテキストではなくドメイン クラスと同じアセンブリにある必要があると思われます。 質問: これは正しい仮定ですか? また、それでも 15 分かかったので、Entity Framework がビューを見たようでしたが、気に入らなかったので、再度作成し直しました。 可能?
それで?私は途方に暮れており、頭を壁にぶつけています。プロジェクトを分割した複数のコンテキストでプリコンパイル済みビューを作成するにはどうすればよいですか? ビューはどこに行きますか?私が守っていない名前空間のルールはありますか? 2 つ以上のコンテキストがある場合はどうなりますか?
助けてください。紀元前
entity-framework - 最初に EF コード: プリコンパイル済みビューを生成する (VS 13 Express)
最初に EF コードを使用するアプリケーションがあります。残念ながら、最初のクエリは読み込みに非常に時間がかかります。私がゴーグルしたとき、これは非常に一般的な問題であることに気付きました. 明らかに、EF は適切に機能するためにいくつかのビューを初期化/生成する必要があります。
これを高速化するために、コンパイル済みのビューを生成することができます。しかし、私が見つけたすべてのソリューションは EF Power Tools を使用しています。残念ながら、VS Express に Power Tools をインストールすることはできません。少なくとも方法は見つかりませんでした (間違っていたら訂正してください)。
電動工具なしでビューを生成する方法はありますか? (たぶんコマンドライン?)
チャオ、ダンテ
entity-framework - Entity Framework Code First: 事前に生成されたビューは機能しますが、起動はまだ遅いです
作成済みのビューを EF プロジェクトに追加しました。実際に動作しているようです。メソッドが呼び出され、init
ビューが明らかにロードされます。参考までに、このメソッドの名前は次のとおりDbMappingView GetView(EntitySetBase extent)
です。
しかし、何も変わりませんでした。起動は相変わらず遅く、8 ~ 10 秒です。後続のすべてのクエリは非常に高速です。
非常に小さなエンティティが 2 つしかありません (合計 20 列)。複雑なことは何もありません。なぜそれはまだとても遅いのですか?
asp.net-mvc - MVC RazorGenerator - "型 (...) は、同じパラメーター型を持つ 'Execute' というメンバーを既に定義しています"
私は大規模な MVC アプリケーションに取り組んできましたが、アプリケーションの起動パフォーマンスを改善する必要があります (最初の読み込みで +1 分かかります)。
RazorGenerator ナゲットと拡張機能もインストールしましたが、コンパイルすると多くのエラーが表示されます。
これは、ジェネレーターの種類を指定していないことが原因でしょうか? これについては、ドキュメントがあまり役に立たなかったからです。
_EditHelperPage.cshtml
または、ビューの 1 つ ( )に次のディレクティブを追加したためかもしれませHelperPage
んWebViewPage
。
この行を削除して に追加するとrazorgenerator.directives
、別のエラーがスローされます。
編集
そして、同じ名前のクラス/コンストラクターを検索すると、結果が見つかります/obj/CodeGen/(...)
asp.net-mvc - コンパイル済みビューを備えた MVC プラグイン
私は最近、外部 MVC プロジェクトを含めるために MEF を使用してプラグイン フレームワークを実装しましたが、すべて正常に動作しています。ただし、サイトをプリコンパイルしようとしても、プラグイン ビューをプリコンパイルすることはできません。これは、それらがプロジェクトに含まれていないことを考えると理にかなっています。メイン プロジェクトを公開する前にプラグインをドロップしても、これを達成する方法はありますか。関連情報は役に立ちます。