C#コードが背後にあるASP.Netページがあります。
ただし、SharePointでの展開が容易になるように、コードビハインドを使用しないように求められました。
別のコードビハインドファイルを使用せずに、ASP.NetページにC#コードを含める方法はありますか?
C#コードが背後にあるASP.Netページがあります。
ただし、SharePointでの展開が容易になるように、コードビハインドを使用しないように求められました。
別のコードビハインドファイルを使用せずに、ASP.NetページにC#コードを含める方法はありますか?
デフォルトでは、Sharepointはサーバー側のコードをASPXファイルで実行することを許可していません。それを解決する方法については、これを参照してください。
ただし、コードビハインドをSharepointにデプロイすることは必ずしも難しいことではありません(広範囲にわたって実施しています)。コードビハインドクラスをアセンブリにコンパイルし、ソリューションを使用してデプロイするだけです。
それでもいいえの場合は、通常配置するすべてのコードを次のようにコードビハインドに含めることができます。
<script language="c#" runat="server">
public void Page_Load(object sender, EventArgs e)
{
//hello, world!
}
</script>
実際には、aspxページにすべてのコードを含めることができます。ここで説明したように。
ここからのサンプル:
<%@ Language=C# %>
<HTML>
<script runat="server" language="C#">
void MyButton_OnClick(Object sender, EventArgs e)
{
MyLabel.Text = MyTextbox.Text.ToString();
}
</script>
<body>
<form id="MyForm" runat="server">
<asp:textbox id="MyTextbox" text="Hello World" runat="server"></asp:textbox>
<asp:button id="MyButton" text="Echo Input" OnClick="MyButton_OnClick" runat="server"></asp:button>
<asp:label id="MyLabel" runat="server"></asp:label>
</form>
</body>
</HTML>
はい、aspxページにrunat=serverのスクリプトタグを含めます
<script language="c#" runat="server">
public void Page_Load(object sender, EventArgs e)
{
// some load code
}
</script>
従来のASP構文を使用することもできます
<% if (this.MyTextBox.Visible) { %>
<span>Only show when myTextBox is visible</span>
<% } %>
DLLがビンにある限り、.aspx.csなしで.aspxページだけをデプロイできると思いました。ここでの問題の一部は、VisualStudio.netが.aspxページでどのように機能するかです。
こちらをご覧ください: VisualStudio.NETでの単一ファイルWebフォームページの操作
確かに、ASP.net MVC RCを使用するVS2008には、ビュー用のコードビハインドファイルがありません。