Solved

FormView: Insert Record Issues

Posted on 2010-09-14
2
868 Views
Last Modified: 2012-05-10
Hi,

I have a formview for insert and updates. I was trying to call a procedure in formview_itemcommand event without setting InsertMethod for the ObjectDataSource. I got an
error and so I gave the exact procedure name for insert method to get rid of the error.

Since the formview objectdatasource method does not exactly match (the no of argument and name) with FormView Datasource(in insertiemtemplate), I was trying to avoid calling the selectmethod defined.

I was able to insert the record in itemcommand event.  

The problem is

1. While exiting out the Item_command event it gives the following error
      Microsoft JScript runtime error: Sys.WebForms.PageRequestManagerServerErrorException: FormView 'FormViewInsertApplication'
                must be in insert mode to insert a new record.
2. After insert, I tried setting the default mode readonly. It does not work

How do I by pass the above problems or is there other better way of accomplishing the same.

Thanks
Suresh

Sections of Code
----------------------
  protected void FormViewInsertApplication_ItemCommand(object sender, FormViewCommandEventArgs e)
    {
        FormView fvApp = (FormView)FindControl("FormViewInsertApplication");
        if (e.CommandName == "Insert")
        {
            if (!doValidate()) { return; }
            // Call Insert Procedure
            //Check return status . If return > 0 set the formview to readonly
 
            dataMaint psMaint = new  dataMaint();

            newID  = psMaint.InsertApp(parameter list)  // This works
 
            if (Convert.ToInt32(newID) > 0)
            {
                fvApp.ChangeMode(FormViewMode.ReadOnly);
               return;  // error after this
            }          
        }


  <asp:FormView ID="FormViewInsertApplication" runat="server"  
            DefaultMode="Insert" DataKeyName="id"
            DataSourceID="ObjectDataSource1"
            OnItemCommand="FormViewInsertApplication_ItemCommand"
            OnItemCreated="FormViewInsertApplication_ItemCreated">
</asp:FormView>

 <asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
        SelectMethod="GetApplicationListByID"
        InsertMethod="InsertApp"
        TypeName="dataMaint">
        <SelectParameters>
            <asp:SessionParameter Name="id" SessionField="sid"
                Type="String" />
        </SelectParameters>
  </asp:ObjectDataSource>

0
Comment
Question by:arvee2003
2 Comments
 
LVL 14

Accepted Solution

by:
existenz2 earned 500 total points
ID: 33689230
You should use  the InsertItemTemplate from the FormView when doing inserts, else that error will be thrown.
0
 

Author Closing Comment

by:arvee2003
ID: 33698312
None. Not Useful
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
ASP.net Have sliders change in order 2 22
When should I use a controller? 3 34
mail.To.Add 5 25
Get number of Files in Directory and Sub Directories 2 39
In .NET 2.0, Microsoft introduced the Web Site.  This was the default way to create a web Project in Visual Studio 2005.  In Visual Studio 2008, the Web Application has been restored as the default web Project in Visual Studio/.NET 3.x The Web Si…
A quick way to get a menu to work on our website, is using the Menu control and assign it to a web.sitemap using SiteMapDataSource. Example of web.sitemap file: (CODE) Sample code to add to the page menu: (CODE) Running the application, we wi…
Windows 10 is mostly good. However the one thing that annoys me is how many clicks you have to do to dial a VPN connection. You have to go to settings from the start menu, (2 clicks), Network and Internet (1 click), Click VPN (another click) then fi…
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…

785 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question