我想做的事情看起來很簡單,但我一直在努力尋找示例代碼來工作。我的應用程序在ASP.NET VB中。我試圖將選定的記錄從表中傳遞到新頁面,然後讓SQL查詢選擇記錄,以便填充字段進行編輯。到目前爲止,我將記錄索引ID傳遞給第二頁。我可以在標籤字段中僅顯示測試。但是我遇到了一些對SQL數據源選擇命令有影響的問題。如果我將記錄編號4添加到默認值,以下是可用的代碼。但我需要用一個request.querystring。(「VenueID」)替換Default值。我的大多數嘗試都顯示一個錯誤,即SQL請求無法從字符串轉換爲Integer。這是我的代碼。當Request.Query字符串是一個整數時,將Request.QueryString傳遞給SelectParameters DefaultValue
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Admn-VenueEdit.aspx.vb" Inherits="Admn_VenueEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<Form runat="server">
<%
Dim QueryID As String
QueryID = Request.QueryString("VenueID")
Dim URLQueryID
URLQueryID = Convert.ToInt64(QueryID)
'esponse.Write(QueryID)
'Dim VenueQueryString As String
'VenueQueryString = "SELECT * FROM [tblVenue] Where [ID] = " + Request.QueryString("VenueID")
%>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" DataSourceID="SqlDataSource1" DataKeyNames="Id" Width="180">
<Columns>
<asp:TemplateField HeaderText="Destination" ItemStyle-Width="80">
<ItemTemplate>
<asp:TextBox ID="txtName" runat="server" Text='<%# Eval("Destintion") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Company" ItemStyle-Width="100">
<ItemTemplate>
<asp:TextBox ID="txtCountry" runat="server" Text='<%# Eval("Company") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT * FROM [tblVenue] Where [ID] = @VenueID">
<SelectParameters>
<asp:SessionParameter
Name="VenueID"
SessionField="VenueID"
DefaultValue="4"
/>
</SelectParameters>
</asp:SqlDataSource>
</Form>
</body>