【发布时间】:2017-02-02 09:02:18
【问题描述】:
我正在尝试使用存储过程填充GridView,但它不起作用,因为我没有发现有什么问题。
代码如下:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
LoadGrid();
}
}
private void LoadGrid()
{
using (MathDBEntities1 db = new MathDBEntities1())
{
string name = Request.QueryString["qName"];
string ID = (from tbl in db.checkQuizName(name) select tbl.QuizID).FirstOrDefault();
GridView1.DataSource = db.QuestionsByQID(ID).ToList();
GridView1.DataBind();
}
}
存储过程代码
ALTER proc [dbo].[QuestionsByQID]
@quizID nvarchar
as begin
select * from dbo.Question where [QuizID] = @quizID
end
【问题讨论】:
-
如果没有存储过程的代码和您的数据,几乎不可能回答您的问题。
-
@Sefe 我添加了程序的代码
-
您是否尝试添加调试器断点并验证
db.QuestionsByQID(ID).ToList()的结果是否存在? -
@GeorgPatscheider 是的,它具有价值,我也在 SQL-Server 上测试过
-
已解决!总是小错误,应该写在存储过程中@quizID nvarchar(max)
标签: c# asp.net sql-server entity-framework