データベースに数値を送信するための基本的な ASP.NET フォーム (Visual Studio 2010 を使用) を作成しようとしています。これは ASP.NET を使用するための非常に初期の試みであるため、最初は非常に単純に記述し、現在は残りの機能を追加しようとしています。もともと、すべてインライン コードでした。コード ビハインド ページを使用するように切り替えようとしていますが、コード ビハインド ファイル内からテキスト ボックスの名前を解決できません。いくつかのチュートリアルに従ってこれらのページを作成し、これを修正するために他のいくつかのソースを調べましたが、これまでに見たすべてのことは、コードビハインド用にすべて設定したことを示しているようですが、機能しません. VS はコンパイル中にエラーを表示し、現在のコンテキストにテキストボックス名が存在しないことを示します。テキストボックスへのすべての参照を削除すると、ページが機能し、ボタン イベントが発生します。protected TextBox XcoordTextbox;
(ASP.NET 1.0 の場合と同じように) しかし、実行時エラーが発生するCS0102: The type 'ManualEntry.default_aspx' already contains a definition for 'XcoordTextbox'
以下は、私のコードの重要な部分です。これが機能しない理由を説明できますか?
ASPXファイル
<%@ Page Language="C#" CodeFile="default.aspx.cs" Inherits="ManualEntry.default_aspx" AutoEventWireup="true" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server"></head>
<body>
<form id="HtmlForm" runat="server">
<div>
X Coord
<asp:TextBox ID="XcoordTextbox" runat="server"></asp:TextBox>
<br />
Y Coord
<asp:TextBox ID="YcoordTextbox" runat="server"></asp:TextBox>
<asp:Button ID="SubmitButton" runat="server" onclick="SubmitButton_Click" Text="Submit" />
</div>
</form>
</body>
</html>
コードビハインド ファイル
using System;
using System.Web.UI;
namespace ManualEntry
{
public partial class default_aspx : Page
{
protected void SubmitButton_Click(object sender, EventArgs e)
{
var Xcoord = XcoordTextbox.Text;
var Ycoord = YcoordTextbox.Text;
//More Code Here
}
}
}