4
次CLR構文は私のaspxページでは正常に動作します
:は、なぜ私がクローズジェネリックのためのInherits属性でC#の構文を使用することはできませんが、CLR構文で結構です
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="Website.MyBasePage`1[HomePageViewModel]" %>
しかし、このC#の構文はない:
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="Website.MyBasePage<HomePageViewModel>" %>
注:私はASP.NET MVCを使用していませんが、ASP.NET MVCのSystem.Web.Mvc.ViewPage<>
を使用するとうまくいきます。
マイMyBasePage
は次のようになります。
public class MyBasePage<TModel> : Page where TModel : class {
public TModel Model
{
get { return (TModel)HttpContext.Current.Items["model"]; }
}
}
ジェームズ - リンクをありがとう。私はあなたが何が起こっているのかを正確に特定したと思います。レコードについては、私が得ているエラーは次のとおりです。 パーサーエラー 説明:この要求を処理するために必要なリソースの解析中にエラーが発生しました。以下の特定の解析エラーの詳細を確認し、ソースファイルを適切に変更してください。 パーサーエラーメッセージ: 'Website.MyBasePage'の種類を読み込めませんでした。 –
beckelmw