C# onrow命令未启动

C# onrow命令未启动,c#,asp.net,sql,webforms,C#,Asp.net,Sql,Webforms,我不能得到命令开火。有什么不对劲吗?这用于显示来自sql server的数据库,其中包含来自每一行的链接。它是使用MVC和VisualStudio2010在c#中构建的 我不知道这个程序会出什么问题,我已经在这个页面和site.master页面上启用了ViewStateMode,并且尝试编辑它太久了,有什么问题吗 顺便说一下,这是我们第一次使用c#MVC或asp.net,所以代码在这方面可能有点草率 <%@ Page Title="" Language="C#" MasterPageFil

我不能得到命令开火。有什么不对劲吗?这用于显示来自sql server的数据库,其中包含来自每一行的链接。它是使用MVC和VisualStudio2010在c#中构建的

我不知道这个程序会出什么问题,我已经在这个页面和site.master页面上启用了ViewStateMode,并且尝试编辑它太久了,有什么问题吗

顺便说一下,这是我们第一次使用c#MVC或asp.net,所以代码在这方面可能有点草率

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master"
    Inherits="System.Web.Mvc.ViewPage<Teamsone.Models.Student>" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
Registration
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<form id="form1" runat="server">
<h2>Classes offered for Next Semester [Spring 2012]</h2>

<script runat="server">

protected void GridView1_RowCommand(Object sender, GridViewCommandEventArgs e)
{
  int index = Convert.ToInt32(e.CommandArgument);
  GridViewRow row = GridView1.Rows[index];

  // Create a new ListItem object for the contact in the row.     
  ListItem item = new ListItem();
  item.Text = "weeeee!";

  ContactsListBox.Items.Add(item);
}

</script>

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
              OnRowCommand="GridView1_RowCommand" allowpaging="true" DataKeyNames="SectionKey"
              DataSourceID="SqlDataSource1" EnableViewState = "true">
    <Columns>
        <asp:BoundField DataField="FacultyKey" HeaderText="FacultyKey" 
            SortExpression="FacultyKey" />
        <asp:BoundField DataField="SectionKey" HeaderText="SectionKey" ReadOnly="True" 
            SortExpression="SectionKey" />
        <asp:BoundField DataField="CourseKey" HeaderText="CourseKey" 
            SortExpression="CourseKey" />
        <asp:BoundField DataField="SectionDay" HeaderText="SectionDay" 
            SortExpression="SectionDay" />
        <asp:BoundField DataField="SectionTime" HeaderText="SectionTime" 
            SortExpression="SectionTime" />
        <asp:BoundField DataField="SectionSemester" HeaderText="SectionSemester" 
            SortExpression="SectionSemester" />
        <asp:BoundField DataField="SectionYear" HeaderText="SectionYear" 
            SortExpression="SectionYear" />
        <asp:BoundField DataField="ClassroomKey" HeaderText="ClassroomKey" 
            SortExpression="ClassroomKey" />
       <asp:buttonfield buttontype="Link" 
              commandname="Add" 
              text="Add"/>
    </Columns>
</asp:GridView>
<asp:listbox id="ContactsListBox" runat="server" Height="200px" Width="200px"/>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
    SelectCommand="SELECT * FROM [NextCourse]"></asp:SqlDataSource>
</form>
</asp:Content>

登记处
下学期开课【2012年春季】
受保护的void GridView1_row命令(对象发送方,GridViewCommandEventArgs e)
{
int index=Convert.ToInt32(e.CommandArgument);
GridViewRow行=GridView1.Rows[索引];
//为行中的联系人创建新的ListItem对象。
ListItem=新建ListItem();
item.Text=“weeeee!”;
ContactsListBox.Items.Add(项目);
}

ASP.NET MVC仅使用视图来呈现html-因此,在这种情况下,如果使用ASP.NET网页或用户控件作为视图,则它将仅用于呈现输出html

整个回发模型(包括控制事件)将不起作用,因为ASP.NET MVC控制器将拦截回发请求。ASP.NET页面没有机会处理请求(以及随后引发回发事件)


此外,您似乎不了解ASP.NET MVC模型,您想开始阅读更多关于它的内容-请参阅

到目前为止,我认为您并不是在实际使用MVC,您似乎陷入了webforms模式。您可能想了解一下MVC,因为(正如Anthony Pegram所说),您似乎在尝试使用webforms,而不是MVC。退房