3

最近、Sitefinity を採用し、MVC ウィジェットの作成を開始しました。全体として、これは宣伝どおりに機能しています。その後、新しいウィジェットをテストした後、名前が間違っていることに気付きました! 次に、コントローラー名を MyWidgletController から MyWidgetController に変更しました。変更を行った後、 「'MySitefinityApp.Mvc.Controllers.MyWidgletController' という名前のコントローラーを解決できません」という例外が発生し始めました。頭をかきむしる。ビルド...もう一度。それでも同じ問題。App-Pool をリサイクルします。同じ問題。

これが私が使用しているコントローラーです(関連するウィジェットのアイデンティティを保護するために名前が変更されています):

[ControllerToolboxItem(Name = "MyWidget", Title = "My Widget", SectionName = "My Custom Widget Section")]
public class MyWidgetController : Controller
{
    public ActionResult Index()
    {
        return View("Default");
    }
}

質問: MyWidgletController が存在しないのに、Sitefinity がまだ MyWidgletController を探しているのはなぜですか?

4

2 に答える 2

5

LOL、私は mvc でカスタム ウィジェットを作成したのと同じ状況でした。別の回避策は Goto >> /Sitefinity/Administration/Settings/Advanced です

次に、ToolBoxes>>PageControls>>Sections の下でモジュールを見つけ、必要なデッド ウィジェットを削除します。

于 2013-07-22T06:59:16.593 に答える
5

これにより、Sitefinity がコントローラーの名前をその DB に永続化することがわかります。この問題が発生した場合、アンデッド コントローラーは次の場所にあります。

select top 10 * from sf_control_properties where name = 'ControllerName'

うーん。これは恐ろしいことです。サイトフィニティ、あなたは恥じるべきです。

于 2013-02-08T18:55:25.350 に答える