powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / использование DropDownList в InsertItemTemplate FormView
5 сообщений из 5, страница 1 из 1
использование DropDownList в InsertItemTemplate FormView
    #33876174
Fixer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть FormView



        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:WebServerConnectionString1 %>"
            ProviderName="<%$ ConnectionStrings:WebServerConnectionString1.ProviderName %>"
            SelectCommand="SELECT [page_id], [parent_id], [obj_name], [shablon_id] FROM [pages]">
        </asp:SqlDataSource>
        <asp:FormView ID="FormView1" runat="server" DataSourceID="SqlDataSource1" DefaultMode="Insert">
            <InsertItemTemplate>
                <asp:Label Visible="false" ID="page_idLabel" runat="server" Text='<%# Bind("page_id") %>'></asp:Label>
                <br />
                Родительский объект:
                <asp:DropDownList ID="parent_idDropDownList" runat="server" DataSourceID="SqlDataSource1"
                    DataTextField="obj_name" DataValueField="parent_id">
                </asp:DropDownList>                
                <br />
                Темплейт:
                <asp:TextBox ID="shablon_idTextBox" runat="server" Text='<%# Bind("shablon_id") %>'></asp:TextBox>
                <br />                
                Название объекта:
                <asp:TextBox ID="obj_nameTextBox" runat="server" Text='<%# Bind("obj_name") %>'></asp:TextBox><br />
                <asp:LinkButton ID="InsertButton" runat="server" CausesValidation="True" CommandName="Insert"
                    Text="Insert"></asp:LinkButton>&nbsp;
            </InsertItemTemplate>
        </asp:FormView>

и код вставки данных из FormView:


    Protected Sub FormView1_ItemInserting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.FormViewInsertEventArgs) Handles FormView1.ItemInserting
        Try
            SqlDataSource1.InsertCommand = "INSERT INTO pages(parent_id, obj_name, shablon_id) VALUES ('" + parent_idDropDownList.SelectedValue + "','" + e.Values(3) + "','" + e.Values(2) + "');"
        Catch ex As Exception
            Message.Text() = "Error in INSERT: " + ex.Message _
            + "<br>StackTrace<br>" + ex.StackTrace + "<br>" _
            + "<br>HelpLink<br>" + ex.HelpLink _
            + "<br>Source<br>" + ex.Source + "<b>"
        End Try
    End Sub

При вставке в таблицу происходит ошибка:



Inserting is not supported by data source 'SqlDataSource1' unless InsertCommand is specified. 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.NotSupportedException: Inserting is not supported by data source 'SqlDataSource1' unless InsertCommand is specified.

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.  

Stack Trace: 


[NotSupportedException: Inserting is not supported by data source 'SqlDataSource1' unless InsertCommand is specified.]
   System.Web.UI.WebControls.SqlDataSourceView.ExecuteInsert(IDictionary values) +180
   System.Web.UI.DataSourceView.Insert(IDictionary values, DataSourceViewOperationCallback callback) +173
   System.Web.UI.WebControls.FormView.HandleInsert(String commandArg, Boolean causesValidation) +627
   System.Web.UI.WebControls.FormView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +745
   System.Web.UI.WebControls.FormView.OnBubbleEvent(Object source, EventArgs e) +163
   System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +56
   System.Web.UI.WebControls.FormViewRow.OnBubbleEvent(Object source, EventArgs e) +118
   System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +56
   System.Web.UI.WebControls.LinkButton.OnCommand(CommandEventArgs e) +107
   System.Web.UI.WebControls.LinkButton.RaisePostBackEvent(String eventArgument) +178
   System.Web.UI.WebControls.LinkButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +31
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +32
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +244
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3838


До этого вместо DropDownList я использовал TextBox


     <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("parent_id") %
>'></asp:TextBox>

а вставка данных выглядела так:


            SqlDataSource1.InsertCommand = "INSERT INTO pages(parent_id, obj_name, shablon_id) VALUES ('" + e.Values(1) + "','" + e.Values(3) + "','" + e.Values(2) + "');"

и это работало.

В чём может быть проблема?
...
Рейтинг: 0 / 0
использование DropDownList в InsertItemTemplate FormView
    #33876264
Fixer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сейчас внутри бехайнд кода, я объявил DropDownList:

    Dim parent_idDropDownList As New DropDownList

Но проблема в том, что parent_idDropDownList.SelectedValue — содержит пустую строку.
Из-за чего это может быть?
...
Рейтинг: 0 / 0
использование DropDownList в InsertItemTemplate FormView
    #33877104
Dimon aka Manowar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А почему бы это не реализовать на декларативном уровне? Зачем извраты с Inserting?

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
...
Рейтинг: 0 / 0
использование DropDownList в InsertItemTemplate FormView
    #33877260
Fixer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Dimon aka Manowar, Вы писали:

DAM>А почему бы это не реализовать на декларативном уровне? Зачем извраты с Inserting?

Имеется в виду без codebehind, на той же странице?
...
Рейтинг: 0 / 0
использование DropDownList в InsertItemTemplate FormView
    #33878228
Dimon aka Manowar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну да - через параметры датасорса

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / использование DropDownList в InsertItemTemplate FormView
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]