Bonjour,

Je débute en ASP.NET avec VWD 2010 Express et SQL Server 2008 R2 Express.
Je crée une application sous forme de site web (en c#) pour la gestion des contacts de mon entreprise.

Mon problème :

Lorsque je crée un contact via un formulaire (FormView), je souhaite que les données entrées soient récapitulées sur une autre page (dans un DetailsView par exemple)

Début de solution :
(Pour l'exemple, je nommerais la page de mon formulaire 'page1.aspx' et le récapitulatif de celui-ci 'page2.aspx')

Sur ma page 'page1.aspx' j'ai défini l'évènement oniteminserted="ValiderInsertion"

Dans mon code behind, j'ai défini ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
    protected void ValiderInsertion(object sender, FormViewInsertedEventArgs e)
    {
 
        Response.Redirect("page2.aspx"); // me renvoie bien sur la 'page2.aspx' , mais vide (logique) car comment récupérer l'ID ?
    }
Enfin, sur ma page 'page2.aspx', j'ai effectué la requête suivante (pour afficher les données dans un DetailsView) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:csTest %>" 
        SelectCommand="SELECT * FROM [Contacts] WHERE ([id] = @id)">
        <SelectParameters>
            <asp:QueryStringParameter Name="id" QueryStringField="ID" Type="Int32" />
        </SelectParameters>
    </asp:SqlDataSource>

Forcément, la page2.aspx ne me renvoie pas les données de mon formulaire, et j'aimerais connaître la syntaxe dans le code behind pour récupérer l'ID nouvellement créé.

J'espère avoir réussi à me faire comprendre et vous remercie d'avance pour vos lumières !

Cordialement,

Japeth