我正在阅读一本名为“带有LINQ的专业ADO.NET 3.5”的书,当我想执行其中一个代码时,Visual Studio无法解析“ProcessesGridView”。 代码是:
ProcessesGridView.DataSource = procs;
Default.aspx的:
<div>
<asp:GridView ID="ProcessesGridView" runat="server" CellPadding="4" ForeColor="#333333"
</asp:GridView>
</div>
和文件背后的代码:
var procs = (from proc in Process.GetProcesses()
where proc.Threads.Count > 10
orderby proc.WorkingSet64 descending
select new
{
proc.ProcessName,
Memory = proc.WorkingSet64,
Threads = proc.Threads.Count
}).ToList();
ProcessesGridView.DataSource = procs;
ProcessesGridView.DataBind();
}
}
答案 0 :(得分:1)
看看这个link,它解释并详细说明了设计师代码的概念以及背后的代码。
您需要在.ASPX设计器文件中有一个名为ProcessesGridView的对象,如下所示;
<asp:gridview id="ProcessesGridView"
autogeneratecolumns="true"
runat="server">
</asp:gridview>
然后,您需要将结果绑定到代码后面的网格视图中,如下所示;
ProcessesGridView.DataSource = ds;
ProcessesGridView.DataBind();
如果代码无法编译,请尝试清理解决方案并重新进行重建。另请参阅以下link。
您还可以检查gridview在designer.cs文件中是否有引用
protected global :: System.Web.UI.WebControls.GridView ProcessesGridView;
答案 1 :(得分:0)
似乎taht ProcessesGridView
是一种UserControl。您是否在WinForms或WPF中使用名称ProcessesGridView
声明了用户控件?您是否为ProcessesGridView
创建了一个实例?
如果ProcessesGridView
不存在,则似乎不会声明。