Я программирую веб-страницу в ASP.NET, которая отображает список студентов, не перечисленных в качестве участников чего-либо, и после щелчка по имени студента показывает вам краткую сводку их данных, чтобы пользователь мог убедиться, что они выбирают правильный человек.
Мой код в настоящее время правильно получает свой идентификатор, добавляет его в качестве параметра к моей хранимой процедуре и выполняет процедуру;
protected void LinkButton_OnClick(object sender, EventArgs e)
{
LinkButton l = (LinkButton)sender;
HiddenField hfv = (HiddenField)l.Parent.FindControl("hfAdmissionNumber");
SqlDataSource2.SelectParameters.Clear();
SqlDataSource2.DataSourceMode = SqlDataSourceMode.DataReader;
SqlDataSource2.SelectCommandType = SqlDataSourceCommandType.StoredProcedure;
Parameter hfcParam = new Parameter();
hfcParam.Type = TypeCode.Int32;
hfcParam.DefaultValue = hfv.Value;
hfcParam.Name = "@AdmissionNumber";
hfcParam.Direction = System.Data.ParameterDirection.Input;
SqlDataSource2.SelectParameters.Insert(0, hfcParam);
System.Data.DataView dv = (System.Data.DataView)SqlDataSource2.Select(DataSourceSelectArguments.Empty);
}
Однако, когда я пытаюсь получить доступ к результатам, я получаю следующую ошибку:
System.NullReferenceException: Object reference not set to an instance of an object.
После отладки, похоже, не возвращается никаких результатов ... но при запуске только хранимой процедуры в SQL Server с теми же данными он возвращает одну строку, как и ожидалось.
Как мне получить доступ к этому результату, чтобы я мог связать его с моими полями?
(я работаю в ASP.NET 3.5 в Visual Studio 2008 с SQL Server 2008.)