У меня проблема с моими asp-повторителями.asp повторитель и привязка
У меня есть ссылка в gridview, которая открывает всплывающее окно, содержащее дополнительную информацию.
<asp:TemplateField HeaderText="Firma Info">
<ItemTemplate>
<a href="#" onclick='openWindow("<%# Eval("CompanyID") %>");'>Vis detaljer</a>
</ItemTemplate>
</asp:TemplateField>
Вот JavaScript:
<script type="text/javascript">
function openWindow(CompanyID) {
window.open('CompanyTest.aspx?id=' + CompanyID, 'open_window', ' width=640, height=480, left=0, top=0');
}
</script>
Для повторителей на CompanyTest (всплывающее меню), я использовал код со следующего сайта: http://atul-dhiman.blogspot.dk/2011/06/aspnet-using-c-repeater-control.html потому что мне нужно редактирования-функциональность.
В частности, является источником для получения данных:
public void Show_Data()
{
SqlDataAdapter adp = new SqlDataAdapter("select * from Company", con);
DataSet ds = new DataSet();
adp.Fill(ds);
Repeater1.DataSource = ds;
Repeater1.DataBind();
}
Это просто возвращает все данные у меня есть, вместо того, чтобы просто возвращает данные, основанные на CompanyID во всплывающем окне-.
Я попытался заменить его
CompanyDataContext db = new CompanyDataContext();
int id = Convert.ToInt32(Request.QueryString["CompanyID"]);
Repeater1.DataSource = db.Companies.Where(x => x.CompanyID == id);
Repeater1.DataBind();
Но тогда мои повторители не показывает ничего.
Куда он пойдет не так?
Я уже пробовал. Если я это сделаю, я получаю ошибку Invalid cast exception на моей привязке данных. Когда я его отлаживаю, он говорит, что я должен убедиться, что число должно быть меньше бесконечности или этот тип источника может быть преобразован в тип назначения. – dQlle
@ user3161471: можете ли вы проверить ссылку href в браузере? Является ли 'id' целым числом? Ошибка указывает, что значение, если 'Request.QueryString [" id "]' не может быть преобразовано в целое число. Также проверьте значение в отладчике, чтобы узнать, что получает страница. – Markus
CompanyID - это int, который хранится в моей базе данных. Id - значение данного CompanyID - поэтому, когда я нажимаю ссылку, она получает значение. – dQlle