3

Web アプリケーションには、.aspx ページがありdoesnt have the code behind file(.cs)ます。というフォルダーにありますstaticcontent。以下はaspxのマークアップです

<%@ Page Title="" Language="C#" %>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
</head>
<body>    
 <form action='searchdata.aspx' method='post'>
 <input type='text' value='' id='searchText' />
 <button id='btnSearch'>Search</button>
 </form>
 </body>
</html>

この検索テキスト ボックスを asp.net に移動し、このページに登録します。

ただし、コンパイルされていないようです。

ユーザーコントロールのみの構文をレンダリングします

<%@ Register Src="~/controls/EmpSearch.ascx" TagName="search" TagPrefix="emp" %>
<emp:search runat="server" ID="searchCtrl"></emp:search>

レンダリングされた HTML

<body>
This contains only static text and there is no dynamic data
Employee Search
<emp:search runat="server" ID="searchCtrl"></emp:search>
</body>

<!--#include file="~/controls/EmpSearch.ascx"-->ノーインパクトで使ってみました。

.aspx ページがここでコンパイルされていないのはなぜですか。

.csproj has only <Content Include="StaticContent\Employee.aspx" />

そして持っていません

<Compile Include="StaticContent\Employee.aspx.cs"> 

コードビハインドがないため

4

1 に答える 1

3

マークアップ全体がないとわかりにくいですが、staticcontentフォルダーに保存されているファイルを静的コンテンツとして扱い、コンパイル/実行のためにasp.netに渡さないようにする構成があると思います:-)。

静的コンテンツ フォルダーの構成で、web.config または IIS を調べます。

詳細については、これは私の開発サーバーで動作します:

WebForm1.aspx :

<%@ Page Language="C#"%>
<%@ Register Src="~/WebUserControl1.ascx" TagPrefix="uc1" TagName="WebUserControl1" %>
<html>
<head>   
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
        <uc1:WebUserControl1 runat="server" ID="WebUserControl1" />
    </form>
</body>
</html>

WebUserControl1.ascx :

<%@ Control Language="C#"%>
<asp:TextBox runat="server" ID="tbSearch"></asp:TextBox>
<asp:Button runat="server" Text="Search"/>
于 2013-10-11T12:28:07.970 に答える