昨日、Umbraco のユーザー コントロールを開発するために C# を書き始めたところ、「現在のコンテキストに * 名が存在しません」というエラーが発生するというよく知られた問題に遭遇しました。次のように、その特定の問題に対する無数の答えを見つけました。
Web Developer Express の「現在のコンテキストに名前が存在しません」というエラーを修正する
http://forums.asp.net/t/1006588.aspx/1?The+name+xxx+Does+Not+Exist+in+the+Current+Context
...などなど。
しかし、これらの質問はどれも私の問題を解決するのに役立ちませんでした。私はまだ頭を壁にぶつけています。
その後、タグとそのコントロールが *.apsx.cs ファイルによって検出されることを発見しました。
カスタム テンプレートを使用してカスタム ログイン コントロールを作成しようとしています。そのためには -tag が必要です。さらに、これを LoginView コントロール内に配置します。
<asp:LoginView ID="MemberValidation" runat="server">
<AnonymousTemplate>
<asp:Login ID="MemberLogin" runat="server" OnLoggedIn="MemberLogin_OnLoggedIn">
<LayoutTemplate>
<asp:Literal ID="InformationMessage" runat="server"></asp:Literal>
</LayoutTemplate>
</AnonymousTemplate>
<LoggedInTemplate>...</LoggedInTemplate>
</asp:LoginView>
私の LiteralControl (および私が持っている他のすべての LiteralControls - これはほんの一例です) は *.aspx.design.cs ファイル内に自動的に登録されないため、*.aspx.cs ファイルではアクセスできませんが、タグとタグを削除すると、LiteralControl がポップアップします。
ただし、コードを希望どおりに機能させるには 2 つのタグが必要なので、私の疑問は未解決のままです。バグですか?
Brinkk10 さん、よろしくお願いします。