2

アップデート:

@ngm コメントのおかげで、bitbuket からビルドをダウンロードしましたが、実際にファイルが正しいパスに配置されていないことがわかりました。

bitbucket のリポジトリをもう一度調べたところ、そこにありました...どうしてそれが起こるのでしょうか?


元の投稿:

次のエディター テンプレートを作成しました。

@model CamelotFaultManagement.Models.OptionListViewModel
<div class="btn-group">

@foreach (var item in Model.ListItems)
{
    string RadioButtonID = ViewData.ModelMetadata.PropertyName+item.ItemID; 

    @Html.RadioButtonFor(m => m.SelectedItemID, item.ItemID, new { id = RadioButtonID })
    <label class="btn" for="@RadioButtonID">@item.ItemName</label>
}

</div>

Views/Shared/EditorTemplatesにOptionListViewModel.cshtmlを配置しました

そして、それを次のビューで使用しました。

<div class="editor-label">
    @Html.LabelFor(model => model.FaultTypeID)
</div>
<div class="editor-field">
    @Html.EditorFor(model => model.FaultTypeID)
    @Html.ValidationMessageFor(model => model.FaultTypeID)  
</div>

model.FaultTypeID は OptionListViewModel タイプです

アプリをローカルで実行すると、すべて正常に動作しますが、appharbor への展開後は、エディター テンプレートがまったく見つからないかのように動作しません (スクリーンショットを参照)。 ローカル

アプハーバー

4

1 に答える 1

4

だから...私を正しい方向に向けてくれた@ngmに感謝します..

何らかの理由で app-harborのOptionListViewModel.cshtmlリリース ビルドに含まれていませんでした。git でのプロジェクト ファイルの変更を調べた後、その特定のエディター テンプレート ビューのビルド アクションが何らかの理由で「なし」に設定されていることに気付きました。 「コンテンツ」に変更したところ、app-harbor がファイルをコピーし、すべてが機能するようになりました。

于 2013-03-13T18:04:00.057 に答える