コントローラプロジェクトからUmbraco.Web.PublishedContentModels.dll を参照すると、循環参照が機能しないようになります。
我々はそれが働いている方法は、我々はその後、Library
フォルダを設定し、そのフォルダにDLLをコピーしたDllファイル
に
<add key="Umbraco.ModelsBuilder.ModelsMode" value="Dll" />
をModelsBuilderを設定することです。他のプロジェクトは、ライブラリ内のdllを参照するため、循環参照を取得しません。
だから、私たちのプロジェクトの構造は、私たちは私たちのためにdllファイルをコピーするビルド前のイベントを作成しましたので、私たちは図書館に我々はmodelsbuilderを実行するたびに、DLLをコピーしたくない
MySolution
UmbracoWebProject
ControllersProject
Library
のようなものですすべてのビルドで。
プレビルドイベントを作成するには、Visual StudioでUmbracoプロジェクトを右クリックし、[プロパティ]を選択します。 [ビルドイベント]を選択し、プロジェクト構造が上記のようになっていることを前提として、次のものをビルド前に追加します。 Dllファイルモードを使用して
は
IF EXIST "$(ProjectDir)bin\Umbraco.Web.PublishedContentModels.dll" xcopy "$(ProjectDir)bin\Umbraco.Web.PublishedContentModels.dll" "$(SolutionDir)Library" /y
、あなたはあなたのdoctype
これが私たちのためにうまく機能を変更するたびに、明示的にUmbracoからモデルビルダーを実行する必要がありますが、それはまだ必要のある領域であるかのようにそれは感じませんウンブラとコミュニティによってもう少し考えてみてください。このために「インストールして忘れる」ソリューションを用意することはうれしいことです。
AppDataとして設定し、モデルをレンダリングします。その後、それらを別々のプロジェクトにコピーし、コントローラプロジェクトに参照してください。 – Mivaweb