問題タブ [turbine]
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.
unit-testing - Turbine がコンソールに書き込みを行わないようにするにはどうすればよいですか?
それが問題です。それに対していくつかの単体テストを作成しようとしていますが、ログを無効にして、テスト出力をより簡単に見つけられるようにしたいと考えています。ロガー (log4j) で思いつくものをすべてオフにしてみましたが、コンソールに書き込み続けています。
c# - Db4objects.Db4o.Linq.dll を使用したタービンで、要求された型の例外を 1 つ以上読み込めません
私のasp.net-mvcアプリケーションでは、Turbineをセットアップしようとしています。
初期化コードは次のようになります。
そして、私は次のようなレジストラのセットを持っています:
実行しようとすると、SetLocatorProvider の後、登録メソッドに入る前のどこかで次のエラーが発生します。
「/」アプリケーションでサーバー エラーが発生しました。
要求されたタイプの 1 つ以上を読み込めません。詳細については、LoaderExceptions プロパティを取得してください。
説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。
例外の詳細: System.Reflection.ReflectionTypeLoadException: 1 つ以上の要求された型を読み込めません。詳細については、LoaderExceptions プロパティを取得してください。
ソース エラー: 現在の Web 要求の実行中に未処理の例外が生成されました。例外の発生元と場所に関する情報は、以下の例外スタック トレースを使用して特定できます。
スタックトレース:
更新
問題のライブラリを Db4objects.Db4o.Linq.dll に絞り込みました。mvc webapplication で参照されているライブラリの 1 つで、このライブラリを参照として (「使用」していなくても、参照に追加しただけで) 取得するとすぐに、上記のYSOD。他のすべての Db4o ライブラリーは問題なく動作します。
METTRE À JOUR
UnityServiceLocator を WindsosServiceLocator および NinjectServiceLocator と交換しようとしました。まったく同じ結果になるため、問題はどちらのライブラリにも起因しない可能性が高くなります。
OPPDATERING
エラー ページを再作成するには、次の手順を実行するだけで十分です。
- 新しい Mvc アプリケーションを作成します (wat バージョンは関係ありません)
- MvcTurbine を使用するように global.asax.cs コードを変更し、必要な MvcTurbine ライブラリを追加します
。 - Db4objects.Db4o.dll を追加
します。 - Db4objects.Db4o.linq.dll
YSODを追加
これをどこでどのようにデバッグするかについてのアイデアはありますか?
asp.net-mvc - 次の要件を考慮して、独自の認証/承認システムをロールバックしたいのは間違っていますか?
私のお気に入りのプロジェクトでは、次の要件を持つユーザー システムが必要です。
- 永続化モデルとしてDb4oと連携する必要があります
- DI を ( Turbineを使用して) 使用して、必要な依存関係をユーザー モデルに提供したい
- asp.net-mvc に簡単にプラグインできる必要があります
- 手間をかけずにテストできる必要があります
- SOと同じように匿名ユーザーをサポートする必要があります
- 認証と承認を分離したい (最初のものは 2 番目のものなしで存続できます)
- 安全である必要があります
ここで機能の前にいくつかのテクノロジーを入れていることは承知していますが、これはペット プロジェクトであり、いくつかの新しいことを学びたいので、それらを要件として含めることは合理的だと思います。
自分自身を転がしている途中で、おそらくNIH症候群に苦しんでいることに気づきました.
私は、asp.net の既存のユーザー フレームワークが不必要に複雑であることがあまり好きではないので、実際には、セキュリティに関してより複雑なものがほとんどであり、現在私に疑問を投げかけています。続けて自分自身を転がすことは防御可能でしょうか?そうでない場合、既存の IPrinciple ベースのフレームワークで上記のすべての要件を満たすにはどうすればよいでしょうか?
asp.net-mvc - パラメーター化されたコントローラーコンストラクターがヒットすることはありません
私のペットプロジェクトでは、タービンをDIコンテナとして使用する方法を学ぼうとしています。
私はそのようなロケータープロバイダーとして団結を登録しています:
私のユーザーリポジトリにはパラメータのないコンストラクタがあり、次のように登録しています。
次に、IUserRepositoryを受け入れる必要があるHomeControllerがあります
(上記のコードスニペットのように)パラメーターのないctorを省略すると、次のようになります(ここで完全になります)。
したがって、私のHomeControllerには、パーレスctorが必要です。インスタンス化するのはUnityコントローラーファクトリではなく、デフォルトのファクトリのようです。
更新
私のMVCApplicationはTurbineApplicationを継承していますが、RouteRegistrationが正常に取得されているため、問題は別の場所にあると思います。
更新
ThomasEydeが提案したように、TurbineApplication.AutoComponent
メソッドをオーバーライドしたかったのですが、オブジェクトブラウザーを確認すると、このメソッドへの参照が見つかりません。さらに、NerdDinnerの例を見ると、このメソッドもオーバーライドしていないようです。それについてのオンラインドキュメントを確認した後、私は賢明なものを得ることができず、手動で登録を行うことに関するドキュメントへのリンクをたどると、プレースホルダーページが表示されます。誰かが私が間違っていることについて私に記入できますか?
私は何かが足りないのですか?
c# - http 応答の本文に突然意味不明な内容が含まれるのはなぜですか?
既存の asp.net-mvc Web アプリケーションをリファクタリングし、mvc-turbine を導入しようとしています。
アプリケーションはそのまま動作しますが、今後のメンテナンスが容易になるように、よりプラグ可能で保守しやすいものにしたいと考えています。
リファクタリングの手順をできるだけ小さくしようと考えたので、MvcTurbine、MvcTurbine.Unity、および MvcTurbine.Web を参照しました。
次に、global.asax.cs の MvcApplication を次のようにしました。
Application_Start の呼び出しは、本来あるべき方法ではないことを認識していますが、最初のステップの変更を可能な限り小さく保つことができます。
実行すると、コントローラーのコードがヒットして正しく実行されることがわかります。次に、私のビューがレンダリングされています。各行をステップスルーできますが、そこにも問題はありません。そして、結果がブラウザに表示されます。意味不明です。
������í½ I%&/mÊ{JõJ×àt¡
$Ø@ìÁÍæìiG#)«*ÊeVe]f@Ìí¼÷Þ{ï½÷Þ
など、そのページ全体。
Turbine なしでこの問題に遭遇したことはなく、最初から Turbine を導入した以前のテストでも問題に遭遇しませんでした。
これをデバッグする方法についてのアイデアはありますか?
c# - mvc タービンの寿命管理?
(Unity を使用して) mvc タービンでサービスの有効期間を管理するにはどうすればよいですか?
IConfigurationService と ILoggerService を受け取る ISearchService 実装の LuceneSearchService があります。
現在、私の検索サービスの登録は次のようになっています。
Turbine でインスタンスを作成する責任を負いたいのですが、シングルトンにしたいのです。
言い換えれば、寿命をどのように定義できますか?
c# - 属性に注入しますか?
asp.net-mvcプロジェクトに[Logger]属性があります。このLoggerAttributeは、コンストラクターでILoggerServiceを取ります。
通常のオブジェクト(コントローラーなど)の場合は機能しますが、属性が解決されていないようです。
TurbineにILoggerServiceを注入させるにはどうすればよいですか?
c# - 最適化を有効にして、またはデバッグ情報なしでビルド
私は現在、私のInjectableAttributes がフィルター部分に到達しない理由を見つけようとしています。
そのため、ソース プロジェクトに直接リンクして、ブレークポイントなどを簡単に配置できるようにしました。
ただし、ビルドすると、次のメッセージが表示されます。
プロジェクトのプロパティを確認しました。構成は「アクティブ (デバッグ)」に設定され、「コードの最適化」チェック ボックスはオフになっています。
更新
プロジェクトではなくファイルを誤ってインクルードしなかったかどうかを再度確認しましたが、参照は正しいようです。
すべてのライブラリが確実にどこかで再構築されるように、既存のビンもすべて削除しましたが、役に立ちませんでした。
更新
高度なビルド ウィンドウでは、デバッグ出力は [完全] に設定され、すべてのオプションはデバッグ情報をビルドしているプロジェクトと同じです。
構成マネージャーは、プロジェクトがビルドされており、他のすべてのオプションとまったく同じ設定になっていることを示しています。
更新
Debug->Windows-Modules ウィンドウで、タービン ライブラリのシンボル ステータスは、PDB file does not match image
システム全体で対応するすべての pdb ファイルを削除して、再生成されるようにしましたが、役に立ちませんでした。
確認するために、システム全体で dll も検索して削除しました。何もない。
VS がデバッグ情報を作成できない原因は何ですか?