1

ベースコントローラーメソッドが実行されていません。以下は私のベースコントローラーです。

public abstract class ReportServiceBaseController : Controller
{
    protected ReportServiceBaseController();

    [HttpPost]
    public JsonResult LoadDocumentInfo(LoadDocumentInfoRequest request);

    [HttpPost]
    public JsonResult LoadDocumentMapInfo(LoadDocumentMapInfoRequest request);
}

以下は私の派生コントローラーです:

public class ReportController : ReportServiceBaseController
{
    protected override PerpetuumSoft.Reporting.WebViewer.Server.ReportServiceBase CreateReportService()
    {
        return new ServiceClass();
    }

    [HttpPost]
    public JsonResult LoadDocumentInfo(LoadDocumentInfoRequest request)
    {
        return base.LoadDocumentInfo(request);
    }
}

派生クラスからLoadDocumentInfoメソッドを削除すると、呼び出しが発生しません。派生クラスに同じ名前のメソッドを追加すると呼び出しが発生します

助けてください。

4

1 に答える 1

1

基本クラスの実装は空ですが、実装のないメソッドは としてマークする必要があるため、コードがコンパイルされないことも意味しますabstract

また、派生コントローラーのメソッドは でマークする必要がありoverrideます。

参考のためにこれを読んでください:http://msdn.microsoft.com/en-us/library/ebca9ah3(v=vs.110).aspx

于 2013-03-14T08:11:13.837 に答える